1 概述
国内各大公司实施 Code Review 有哪些经验呢,我猜你肯定好奇:
- Code Review 首要目的是磨子?
- Code Review 在开发流程中处于哈位置?比如有的是挑选一些代码 Review,有的是不 Review 不能上传,有的由团队成员自由发起……
- Code Review 采用的工具、过程是什么?
- Code Review 的过程中遇到过哪些问题?
2 Google Code Review 之道
Google新鲜热辣论文《Modern Code Review: A Case Study at Google》https://sback.it/publications/icse2018seip.pdf。
基本法都被翻来覆去,说了也没啥新鲜的:
- 首要目的是保证代码可读性,一致性,其次是设计讨论和知识分享。找错这事人类干不来;
- 所有代码改动都要过Code Review, 就算你是代码Owner. 过了Review直接提交进统一代码树的head;
- Review通过Web-based工具进行,但更重要的是有各种各样的工具作presubmit checks, 机器能找到问题(如格式不符合style guide)连review请求都发不出去,或直接在review上fix suggestion糊你一脸。人类可以专注于更难搞的问题。
有趣的是文章给了一些通过log分析拿到的
3 量化指标
- Google工程师每周发CL(代码改动单位)中位数是 3, 80% 工程师每周CL数不超过 7.(怎么好像显得国企企业生活挺混的样子