程序员必备的代码审查清单

来自:IT程序猿英文原文,译者:猿妹

在我们关于有效的代码审查的博客中,我们建议使用一个代码审查表。审查表是代码审查中的一个很好的工具,它们确保审查在你的团队持续的执行。它们也是一种发现和解决普通问题的便捷方式。

软件工程研究所的研究表明,程序员会犯15-20个常见的错误。所以通过将这样的错误添加到审查表中,你可以确保及时地发现这些错误,并帮助你无论在什么情况下都能避免出现这些错误

为了让你更好开始使用审查表,以下是典型检查表的内容:

t018711c363a0912b7e.png



代码审查表大体内容:

1、代码是否正常工作?它是否执行其预期功能,逻辑是否正确等
2、是否所有的代码都容易理解?
3、是否符合你一贯的编码规范?这些通常包含大括号的位置,变量和函数名称,行长,缩进,格式和注释。
4、是否有冗余重复的代码?
5、是否代码都尽可能模块化?
6、是否有全局变量可以被替换?
7、是否有注释掉的代码?
8、Do循环是否设定的长度和正确的终止条件?
9、是否有代码可以被库函数替代?
10、是否可以删除任何记录或调试代码


安全方面

1、是否检查所有数据输入(正确的类型,长度,格式和范围)并进行编码?
2、在使用第三方实用程序的情况下,返回的错误是否被发现?
3、输出值是否被检查和编码?
4、是否处理了无效的参数值?

wKiom1W5mMHD3wwOAADGea5Zy_0534.jpg



文档

1、是否有注释并且描述了代码的意图
2、是否所有功能都有注释
3、是否对异常行为或边缘案例的处理进行描述
4、是否记录了第三方库的使用和函数
5、是否解释了数据结构和计量单位
6、是否有不完整的代码?如果是这样,应该去除或者用类似“TODO”这样的标识去标记


测试

1、代码是否可以验证?即不添加太多或隐藏的依赖关系,无法初始化对象,测试框架可以使用方法等。
2、测试是否存在,是否全面?即至少是你认可的代码覆盖
3、单元测试实际上测试代码是否实现了预期的功能?
4、是否检查数组有“超限”的错误
5、是否存在可以被现有的API替换的测试代码吗

你还需要添加任何特定语言中可能导致的问题到此代码审查表中的,该清单的问题并不是详尽的。越是详尽使用起来恰恰越麻烦,最好的清单是仅仅涵盖常见的问题就好。


优化代码审查表

使用清单作为起点,根据具体的案例对它进行优化,一个很好的方式是让你的团队记录那些在代码审查过程中出现过的问题。有了这些数据,你就能够识别你团队的常见错误,然后将其构建到自定义的审查表中。同时,不要忘记删除没出现过的问题(除了那些你想要保留的极少可能发生的问题,比如关键的项目以及安全相关问题)


获取认可并保持最新

作为一般规则,审查表上的任何项目都应具体,如果可以,对于一些项目你可以作出二次选择。这有助于避免判断不一致。一个很好的办法就是与你的团队分享这份审查表并让他们对其内容表示认可。确保定期查看清单,以检查每个项目是否仍然有用。
制作了一个很好的清单,可以提高代码审查过程中发现的缺陷数量。这将有助于提高编码标准,避免代码审查质量不一致。
推荐↓↓↓
程序猿
上一篇:致准备报考计算机专业的你! 下一篇:2017年IT四大巨头员工身体状况排行榜:加班最狠的竟然是...