代码审查规范
1CodeReview目的
CodeReview是一种用来确认方案设计和代码实现的质量保证机制,通过这个机制我
们可以对代码、测试过程和注释进行检查。
CodeReview主要用来在软件工程过程中改进代码质量,通过CodeReview可以达
到如下目的:
在项目早期就能够发现代码中的BUG。
帮助初级开发人员学习高级开发人员的经验,达到知识共享。
避免开发人员犯一些很常见,很普通的错误。
保证项目组人员的良好沟通。
项目或产品的代码更容易维护。
2CodeReview的前提条件
代码提交审核前,开发者必须确保代码符合如下条件,审核者需要确保所有前提条
件都已满足方可开始审查,同时也是审查的主要检查点。
所有代码注释清晰,语法正确,编译通过。
日志代码完整,业务日志、系统日志分开,中文描述,脱敏处理,状态变更,
全部清晰明确。
测试代码覆盖全部分支和流程,暂时统一使用工具Emma(各编译器可下载对
应插件)进行CoverageCheck。
项目引用关系明确,依赖关系清晰,配置文件描述。
3CodeReview的审查范围
代码的一致性、编码风格、代码的安全问题、脱敏问题、代码冗余、是否正确设计以符合设计要求(性能、功能)与设计文档相同等等。
f31、完整性检查(Complete
ess)
代码是否完全实现了设计文档中所涉及的所有流程和功能点
代码是否已包含所有所需的业务日志、系统日志、异常日志,日志内容是否完
整,日志文件配置是否正确。
代码是否使用缓存等,配置信息是否正确可配置。
代码中是否存在任何没有定义或没有引用到的变量、常数或数据类型等
32、一致性检查(Co
siste
cy)
代码的逻辑是否符合设计文档
代码中使用的格式、符号、结构等风格是否保持一致
33、正确性检查(Correct
ess)
代码是否符合制定的标准
所有的变量都被正确定义和使用
所有的注释都是准确的
所有的程序调用都使用了正确的参数个数
34、可修改性检查(Modifiability)
代码涉及到的常量是否易于修改如使用配置、定义为类常量、使用专门的常量
类等
代码中是否包含了交叉说明或数据字典,以描述程序是如何对变量和常量进行
访问的
代码是否只有一个出口和一个入口(严重的异常处理除外)
35、可预测性检查(Predictability)
代码所用的开发语言是否具有定义良好的语法和语义
是否代码避免了依赖于开发语言缺省提供的功能
代码是否无意中陷入了死循环
代码是否避免了无穷递归
36、健壮性检r