代码复查对照表
Make Lists, Not War. - workflowy.com
最近在试用 Workflowy(我的推广注册链接,验证邮箱后两个人每月都可以增加 250 个节点,反感的话用引言那样没有尾巴的连接即可),深深觉得清单是个好东西,正在三分钟热度地把之前屯的东西整理知识点出来。
待得《对照审查点清单做代码审查可消除更多的bug》一文,抄了一遍之后觉得不够,对照自己平时的情况略作删改:
- 代码结构是否符合规范
- 代码命名是否符合规范
- 系统输入输出是否符合文档 // 需要接口文档
- 代码逻辑是否符合预期 // 需要流程图 && 项目经理认可
- 是否正确处理事务
- 注释是否容易理解 // *注释是为了说明why而不是what***
- 代码是否容易理解
- 实际操作是否被用于逻辑控制
- 循环
- 是否嵌套过深
- 能否正确结束
- 中途错误时应该
break
还是continue
,为什么
- 分支是否采用
if...return
而不是if..else...
- 三元表达式一眼就可理解吗
- 递归能让代码变得更好理解吗
- 是否存在风格不良代码
- 重复的代码
- 多余的代码
- 注释的代码
- 重复实现了类库提供功能
- 日志和调试代码参与流程
- 安全
- 输入是否经过校验
- 数据传输是否正确编解码
- 编码和解码次数是否一致(注意框架的行为)
- 编码后传输是否存在特殊字符
- 输出的数据是否存在需要掩藏的部分
- 第三方工具的错误是否被正确处理了
- 是否处理了边界值
- 是否有未捕获异常的统一处理
- 所有的异常都能被记录吗
- 文档
- 是否存在接口文档
- 是否存在数据字典
- 未实现的方法到底是 NotImplemented 还是 NotSupported