`

如何做好Code Review?

阅读更多

PS:原创文章,如需转载,请注明出处,谢谢!     

本文地址:http://flyer0126.iteye.com/blog/2426055

 

一、背景

        最近随着交易业务快速扩展,研发组内新项目及新成员越来越多,如何做好Code Review,把控研发人员开发代码质量很是关键。

 

        对于大部分业务团队,谈到Code Review就会面露哀状:

        “上线时间倒排,研发工期这么紧,连码代码的时间都不够了,你还要我CR?”

        “上版的需求,这版就变了,代码生命周期太短,烂就烂吧,反正能用就行啦”

 

二、抛出问题

        下面分几个方面来分析下Code Review:

        * Code Review有没有用?

        * Code Review中的问题如何解决?

        * 如何做好Code Review?

 

三、分析问题

    1、Code Review有没有用?

        Code Review 的好处不言而喻。主要让你的代码可以更好的组织搭建,有更高可读性,且更容易维护,同时可以知识共享,相对而言,找Bug并不是那么的重要。

        总结一句话,Code Review可以直接影响你的工程能力。

 

    2、Code Review中的问题如何解决?

        Code Review中的主要问题:

        a. 编码质量较差

            原因可能是对业务不熟悉,对语言应用技巧不熟悉,也可能对公司、部门编码规范不熟悉等等,有些问题如果没人及时提醒纠正的话,只会造成在错误的道路上越走越远。

        b. 自己承担还是指导他人?

            Code Review是一个学习过程,将自己的一些经验指导给新人,从长远来看,是在“复制”你的生产力,一个人能力再强,也不可能包揽所有的任务,团队协作也是研发人员需要注重培养的软素质。

        c. 主要Review什么?

            编码风格,大家约定俗成的规范准则,从新人开始一步步坚持下去;

            代码可读性,代码写出来是叫别人可以读懂的,而且是易读的;

            全面性,业务实现异常情况考虑不全面的问题,需要老工程师指导,以免造成线上故障;

            不良代码或架构,错误的代码实现、功能函数抽象以及文件组织等,都需要尽量保持整个代码库的风格一致。

 

    3、如何做好Code Review?

        Code Review机制一定是要与团队规模和项目节奏挂钩的。

         a. Code Review 频次如何控制?

            研发前期需要技术方案设计评审,日常Code Review保证开发过程中代码质量,研发完成后项目Code Review是为了呼应前期评审过的技术方案,确认哪些方案变更了,是由于什么原因等等。

            如:大型项目,每天Code Review一次;小优化需求,merge request时候Code Review一次即可。

            Tips:Code Review一定要尽可能前置,防止测试后改动问题造成影响。

        b. Code Review 时间如何控制?

            一次不要检查过多代码,控制在1小时以内,一个[研究机构] 调查指出,太多信息或者60分钟以后,发现缺陷的能力就会降低。

        c. 作者在审核前需要注释源代码

            在他人评审之前,自己Review一遍实现思路,说不定会有意外收获呢。

        d. 使用Checklist

            可能团队内人员会犯同样的错误,一遍遍重复查找费时费力,应该整理核对Checklist来缩减经常出现的错误的排查时间,同样Checklist也有利于问题统计和跟踪改进结论。

        e. 改进问题要及时

            争取当天问题当天解决,同时Code Review新问题之前,先回顾一下之前遗留问题是否修复,做到Code Review行之有效。

        f. 培养积极的Code Review文化

            Review是团队提高代码质量的机会,也是互相学习的过程;建立接受他人评审的潜意识,我的工作产出是需要其他人Review的,这种自我激励会自然的要求自己产出更优秀的代码。

 

四、写在最后

        作为研发工程师,首先要对自己负责的业务和代码负责,这个与医生、教师的岗位职责是一样的。如果开发没有标准,对应该高标准的东西一味妥协,自己的标准一降再降,到最后吃亏的还是自己。

 

「技术架构精进」专注分享技术架构、团队管理及商业认知等,持续更新 欢迎大家关注~

0
0
分享到:
评论

相关推荐

    Modern Code Review- A Case Study at Google.pdf

    Employing lightweight, tool-based code review of code changes (aka modern code review) has become the norm for a wide variety of open-source and industrial systems. In this paper, we make an ...

    代码审查code review.7z

    这里的资源主要是讲述了代码审查的必要性。...为什么要进行Code Review?  如何做Code Review? 如何使用工具进行Code Review? CheckStyle FindBugs PMD 使用工具进行Code Review的局限性 我们可以做得更好

    Source Insight 宏 codeReview.em

    CodeReview工具的作用:1.减少评审人的缺陷记录和汇总时间,方便责任人查找问题出处;2.检视完成后生成检查报告,代码作者点击按钮可以直接找到错误处;3.任务责任人修改完成后,直接修改问题状态,组织者按快捷键...

    CodeReview工具Jupiter

    Code Review的作用和意义已在很多技术团队内达成共识,可是很多时候并未被有效执行,甚至被认为是一项费时费力的工作。借助一些工具可以更容易,更有效率地来进行Code Review,本文介绍的Jupiter即是其中之一。  ...

    Source Insight CodeReview宏,增加使用说明

    Source Insight CodeReview宏,增加使用说明。用于代码评审和统计。

    code review

    code review 用来检查代码,生成检查报告的

    code review(程序员必看)

    code review(程序员必看)code review(程序员必看)code review(程序员必看)

    code review tool from google

    code review on the web

    PHP-Code-review.rar_PHP codereview_php code review_php代码review

    代码审核,是对应用程序源代码进行系统性检查的工作。它的目的是为了找到并且修复应 用程序在开发阶段存在的一些漏洞或者程序逻辑错误,避免程序漏洞被非法利用给企业带来不必 要的风险。

    OWASP Code Review Guide

    There are four basic techniques for analyzing the security of a software application - automated scanning, manual penetration testing, static analysis, and manual code review. This OWASP Guide is ...

    Code Review Checklist

    Code Review ChecklistCode Review ChecklistCode Review Checklist

    CodeReview工具

    包含jupiter和reviewclipse两款eclipse插件,做code review使用。有效的code review能有效改善bug多发,代码质量低下等问题

    C++ Code Review检查清单

    C++代码 Code Review时使用的检查清单和问题记录模板

    Java项目开发CodeReview 常见问题实例分析及指南

    CodeReview的基本手段还是需要技术经理通过人工检查项目成员的代码,来将各种问题扼杀在开发阶段,但是不同经验及技术水平的经理在review同一段代码所发现的问题可能相差比较大,不同的Team可能因此产生的效果也不同...

    code review代码检测原理

    本文叫你如何进行code review代码检测

    CodeReview.em

    source insighet 集成code review,代码审核时非常好用,使用起来比较简单,加入工程,同步,添加快捷键,使用快捷键即可正常使用,保存即可。

    Steven Code Review 代码在线审查

    Steven Code Review 2009.12M1发布包.rar 代码在线审查工具 @date: 2009-12-28 @author: YF @email: yifi@tom.com 功能: 1 方便学员学习教师的代码,无需在本机运行IDE即可以代码加亮的方式查看服务器共享的代码...

    zyh-code-review.rar

    zyh-code-review.rarzyh-code-review.rarzyh-code-review.rarzyh-code-review.rar

    漫谈codereview

    漫谈codereview,关于review的一些基础知识和总结。

    敏捷开发中的CodeReview

    敏捷开发中CodeReview的目的及内容做任何事情,首先要清晰为什么要做,才能有目标和动力把事情做得更好,CodeReview也是如此。只有清晰明确了敏捷团队进行CodeReview的动机,才能以此为方向开展后续工作。下面我们...

Global site tag (gtag.js) - Google Analytics