我们需要code review

1. Code Review目的
    Code Review是一种通过复查代码提高代码质量的过程,在XP方法中占有极为重要的地位,通过code review,主要达到以下目的:
           1). 提高代码质量
           2).及早发现缺陷,降低处理缺陷的成本
           3).分享,提高团队成员开发水平

2. Code Review内容
       Code Review内容的三个层级:
           1). 实现正确性:主要包括是否实现预期功能;是否存在bug;  是否存在性能问题等;
           2). 设计合理性:主要包括实现方法,数据结构,设计模式,扩展性等,是否存在大量重复代码和其他组件是否有重复的代码,包结构设计是否合理等,是否存在性能问题等。
           3). 代码可读性:主要包括代码风格、美观性。

        实现正确性和设计合理性笔者认为是必须要review的内容,代码可读性由于每个开发者的习惯和风格不一样,因此,建议做低级别的review,例如是否有注释。
        实现正确性和设计合理性中有一个需要特别注意的点就是性能问题,这里的性能问题是指是否由于设计和实现的原因,导致review部分成为整个模块或者系统的瓶颈;而不是一个局部的无足轻重的优化,否则,整个review会沦为彻头彻尾的争吵。

3. Code Review方式和时间
        Code review存在很多方式,包括:Review meeting、Email pass-around、Over-the-shoulder、Tool-assisted code review等。
        具体方式可以根据不同团队和项目的情况进行选择。
       我们知道软件开发中存在长鞭效应,即一个问题越在后期发现造成的影响会越大,因此,Code Review应该及早进行,比较推荐的是每一次迭代进行Code Review

4. Code Review的人员
        谁来对code 进行review,比较简单的方式是:为每一个模块指定owner,每一个模块至少有2个owner,其他团队成员对模块的升级由模块owner进行Code Review,Owner之间互相进行Code Review。

5. Code Review的工具
        Code Review有一些好的工具,可以参考:http://blog.csdn.net/haoel/article/details/4469462

        Code Review是发现问题的过程,同时也是学习和交流过程。需要是灵活、自由、主动的态度,而不是行政上的控制和规章流程。和敏捷开发的核心思想一致,让团队明确Code Review 的思想、作用和目的内容后,充分发挥个体的积极性和学习分享的动力。随时随地地进行Code Review,讨论,重构,改进。

参考:
http://msdn.microsoft.com/en-us/library/ff648637.aspx
http://www.programmer.com.cn/1310/
http://www.cnblogs.com/panshuiqing/articles/1147065.html

你可能感兴趣的:(我们需要code review)