代码审查建议(code review)
-------------------------
### 1.自动化
常规检查自动化,比如可以借助[Spotbugs](
https://github.com/spotbugs/spotbugs)做代码静态扫描。每次代码评审前先解决掉扫描结果中的 Error 。
TODO:搭建自动化工具
### 2.代码审查之前确定审查内容
开发人员提前准备审查内容的上下文,每次审查内容不易太多,聚焦在被审查的核心内容上。
### 3.每次代码审查时间不能超过 1 小时
聚焦在被审查的代码本身上,防止偏离主题,精力疲劳。
### 4.提供良性反馈
如果开发人员的设计思路与审查人员有很大分歧,应该以开发人员思路为主,是否采纳审查人员提供的思路,由开发人员决定。
避免在审查时过多争论。
**推翻设计思路,应该发生在项目详细设计阶段,而不是代码审查阶段。**
### 5.问题归类,避免陷入争论
有时候我们在说服对方的时候,应该提供一些可以依赖的依据,例如:为何需要使用某种算法,
解决这个问题的原则是什么,计算机领域的很多问题是有理论支撑的,在解释为什么要这么做,最好能提供依赖原则。
### 6.做好审查会议纪要
对于需要在审查后修改的地方,有明确的会议纪要,在后续审查时,方便审查人员回顾。
TODO:每次代码审查会议纪要通过邮件发送到组内
### 7.审查总结
代码审查是大家经验交流的一个契机,也是相互学习的时候,开发人员可以总结一些审查中的心得。
- 是否有更好的命名方式?
- 是否学习到了新的设计模式?
- 是否有更好的代码组织方式?
- 是否学习到了新的工具?