Home | 简体中文 | 繁体中文 | 杂文 | Github | 知乎专栏 | Facebook | Linkedin | Youtube | 打赏(Donations) | About
知乎专栏

12.8. 需求评审和代码审查

中国企业和外企做评审和代码审查维度,诉求是不不同的。国内企业更多是因为团队经验不足才需要评审和审查,而外企的代码审查更多是考虑安全。

代码审查的层次:

  1. 第一层:基础,语法,风格,规范
  2. 第二层:性能,瓶颈
  3. 第三层:安全,风险

目前我们知道做到第一层。

12.8.1. 什么需求需要评审或审查?

0~1的项目需要评审,1~100的项目不需要。从0~1摸着石头过河,对目标不清晰,风险不可控。而1~100的项目是轻车熟路,不需要评审。

经验不足需要代码审查,人们都是通过反复试错来积累经验的,年轻的产品经理,经验不足会出现很多设计缺陷,很多问题想不到。年轻开发人员也是如此,很多bug 源于不熟练。

12.8.2. 怎样做 Code review?

结合目前情况,我认为最可行的方案,在分支合并时 Code review,随时 code review,及时发现,及时改。

对于入职半年内的同事所提交的代码做 100% 审查, 一年之内的同事 50% 抽查。主要是考虑新人对系统不熟悉,容易出现重大 bug,造成生产环境事故。随着对系统的了解和熟悉,后面就可以逐步放开抽查,一年之后对系统全面掌握,就可以不做代码审查了。

也不要让代码审查成为负担,不要让代码审查流于形式,例如发起会议,全员参与,会议纪要,再写报告。

谁来做代码审查?可以让新员工的导师和小组长做,代码审查是工作的一部分,应该计入绩效考核。

12.8.3. 怎样避免 Code review?

一个健康的团队应该是橄榄形的,即少量的高工和初级工程师,团队由大量的中级工程师构成。

一个职业生涯 10年的员工做出的需求和写出的代码几乎不用评审和审查,在他敲下键盘之前就已经考虑到了性能,安全,扩展性……