Code Review是保证项目中代码质量非常重要的一个环节,其主要工作是:
1、发现代码中的bug;
2、从代码的易维护性、可扩展性角度考察代码的质量,提出修改建议。
1、代码中的bug主要会出现在下列两个地方:
(1) 与商业逻辑无关的bug。
比如,系统中打开的流/文件/连接等没有及时关闭;或是存在thread safe问题,或是存在性能低下问题等,这类问题对有经验的开发人员是比较容易发现的。
2、与商业逻辑相关的bug。
这类bug是非常隐蔽的,如果有对产品不熟悉的人参与该产品的项目开发,容易出现这类的bug。为了避免这类bug的出现,我们除了在Use Case和Test Case中详细描述以正确指导开发人员并在测试时能及时发现它之外,Code Review也是不可缺少的保证环节。
我们希望代码的审核者对产品非常熟悉。
3、什么样的人承担代码审核者Code Reviewer?
(1)、比较熟悉相关商业逻辑。
(2)、有丰富的编程经验。
两者缺一不可。
4、代码Code Review的步骤,这些是我在平时工作中的经验总结,目前也是按照这个步骤在做。
(1)、代码编写者和代码审核者坐在一起,由代码编写者按照UC依次讲解自己负责的代码和相关逻辑,从Web层->DAO层;
(2)、代码审核者在此过程中可以随时提出自己的疑问,同时积极发现隐藏的bug;对这些bug记录在案。
(3)、代码讲解完毕后,代码审核者给自己安排几个小时再对代码审核一遍。
代码需要一行一行静下心看。同时代码又要全面的看,以确保代码整体上设计优良。
(4)、代码审核者根据审核的结果编写“代码审核报告”,“审核报告”中记录发现的问题及修改建议,然后把“审核报告”发送给相关人员。
(5)、代码编写者根据“代码审核报告”给出的修改意见,修改好代码,有不清楚的地方可积极向代码审核者提出。
(6)、代码编写者 bug fix完毕之后给出反馈。
(7)、代码审核者把Code Review中发现的有价值的问题更新到"代码审核规范"的文档中,对于特别值得提醒的问题可群发email给所有技术人员。
5、责任:
代码编写者,代码审核者共同对代码的质量承担责任。这样才能保证Code Review不是走过场,其中代码编写者承担主要责任,代码审核者承担次要责任。
6、Code Review必备的文档:
“代码审核规范”文档:记录代码应该遵循的标准。代码审核者根据这些标准来Code Review代码,同时在Code Review过程中不断完善该文档。
分享到:
相关推荐
zyh-code-review.rarzyh-code-review.rarzyh-code-review.rarzyh-code-review.rar
为了便于各类用户高效操作SAP系统,一本详尽的“SAP T-Code速查手册”应运而生,它如同一把钥匙,为SAP R/3系统的最终用户、咨询顾问、技术支持人员和技术开发人员开启了通往系统深处的大门。 二、T-Code:SAP系统...
Jupiter是一款开源的Eclipse插件,以XML形式存储review数据,通过SVN/CVS将review结果在团队内共享。一个很方便的功能是其建立了review问题跟具体源代码的对应关系(通过点击review问题列表中的问题可以跳转到对应的...
标题提到的"IDEA代码检视插件Code Review Helper"是针对IntelliJ IDEA集成开发环境的一款强大工具,旨在提升代码审查的效率和质量。代码审查是软件开发中的一个关键环节,通过它,团队成员可以互相检查彼此的代码,...
**Source Insight CodeReview宏**是专门针对Source Insight这款强大的源代码查看和编辑工具设计的一套扩展功能,主要用于代码评审和统计。Source Insight以其强大的代码导航、语法高亮和实时分析能力,深受程序员...
泛微E-CODE是一款专业的协同办公系统,它集成了丰富的功能和高度可定制化的特点,为企业提供了一站式的信息化解决方案。在前后端开发领域,E-CODE提供了强大的技术支持,允许开发者构建高效、稳定且用户体验良好的...
《极狐:2023中国企业研发高效能白皮书-Code Review篇》深入探讨了Code Review在当前中国企业研发过程中的重要性、价值、挑战以及发展趋势。Code Review,即代码审查,是软件开发中的关键环节,旨在通过同行评审来...
代码审核,是对应用程序源代码进行系统性检查的工作。它的目的是为了找到并且修复应 用程序在开发阶段存在的一些漏洞或者程序逻辑错误,避免程序漏洞被非法利用给企业带来不必 要的风险。
Angular UI Codemirror则为AngularJS应用提供了与CodeMirror集成的桥梁,使得开发者能够轻松地在前端项目中实现高级的代码编辑功能。 在实际应用中,Angular UI Codemirror的使用通常包括以下几个步骤: 1. **安装...
但是,SAP社区、官方手册、培训课程以及在线资源,如SAP中文网(***),都是学习和查找T-code的好地方。通过这些途径,用户可以找到特定模块的详细T-code列表和对应的说明,进而学习如何使用它们来完成具体的工作...
`pivotical-codereview-gitlab` 的配置文件通常位于 `pivotal-codereview-gitlab-master` 文件夹中,包含必要的设置参数,如 Gitlab API 端点、Pivotal Tracker API Token 和项目ID等。 此外,该工具还支持自定义...
在文档《NY4/NY5系列Q-Code范例PowerSpeechFormat Programmer用户手册》中,详细介绍了Q-Code的基本功能、不同系列之间的区别,以及如何应用Q-Code实现具体功能的实例。 首先,文档中提到NY4与NY5 Q-Code之间的区别...
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 ...
《E-Code Explorer 0.86正式版:易语言反编译利器解析》 在IT领域,软件开发工具的多样性使得程序员们能够更高效地完成工作。其中,易语言作为一款面向中国用户的编程语言,以其简洁易懂的语法赢得了众多开发者喜爱...
开源项目“miko-code-bdikaa.zip”是一个包含了源代码的压缩文件,从描述中的“Code review please”可以看出,这可能是一个开发者分享他的代码,请求社区其他成员进行审查和反馈。这个项目的名称“bdikaa-master”...
开源项目-Code-Hex-updater.zip,Check new github release.
Algorithm-Nayuki-web-published-code.zip,完整的代码文件(*.java/js/pY/CPP/等)在Nayuki项目网站上发布。,算法是为计算机程序高效、彻底地完成任务而创建的一组详细的准则。
开源项目-Code-Hex-go-version-update.zip,GitHub - Code-Hex/go-version-update: Update the version string of your go project.
(R)-Delphi+Interbase-Code-龙邦汽配进销存源码-源代码全-使用手册-钻石精品
你可以通过克隆 `git-code-review-master` 压缩包到本地,然后按照项目中的文档指示进行设置。这通常包括添加自定义的 Git 配置和将 `git-code-review` 添加到 PATH 环境变量中,以便在命令行中直接调用。 一旦安装...