代码复审的步骤:
- 代码必须成功地编译,在所有要求的平台上,同时要编译DeBug| Retail版本。编译要用团队规定的最严格的编译警告等级(例如C/C++中的W4)。
- 程序员必须测试过代码。什么叫测试过?最好的方法是在DeBugger中单步执行。
- 程序员必须提供新的代码,以及文件差异分析工具。Windiff或VSTS自带的工具都可以。VSTS中可以通过Shelveset来支持远程代码复审。
- 复审者可以选择面对面的复审、独立复审或其他方式。
- 在面对面的复审中,一般是开发者控制流程,讲述修改的前因后果。但是复审者有权在任何时候打断叙述,提出自己的意见。
- 复审者必须把反馈意见逐一提出。注意,复审者有权提出很多看似吹毛求疵的问题,复审者不必每一件事都要亲自调查,开发者有义务给出详尽的回答。
- 开发者必须负责让所有的问题都得到满意的解释或解答,或者在TFS中创建新的工作项以确保这些问题将来会得到处理。
- 对于复审的结果,双方必须达成一致的意见。
(1)找出代码的错误。如:a. 编码错误,比如一些能碰巧骗过编译器的错误。
b. 不符合项目组的代码规范的地方。
(2)发现逻辑错误,程序可以编译通过,但是代码的逻辑是错的。
(3)发现算法错误,比如使用的算法不够优化。
(4)发现潜在的错误和回归性错误——当前的修改导致以前修复的缺陷又重新出现。
(5)发现可能改进的地方。
(6)教育(互相教育)开发人员,传授经验,让更多的成员熟悉项目各部分的代码,同时熟悉和应用领域相关的实际知识。
两人合作:两人在一起合作,自然都有自己的想法,在两人平等合作的情况下,不存在领导与被领导的关系。没有绝对正确或错误的方法,只有合适或不合适的方法。两个人的水平、目标不一致,不可能没有矛盾。任何人都不是完美的,都有可以改进的空间,在不断的改进中,团队之间相互磨合,最终共同完成任务。