代码审查的主要考虑因素是什么?

时间:2019-11-17 17:25:57

标签: pull-request software-quality

代码评论在今天非常受欢迎。

如果我编写的代码有效并且也有测试来证明它,为什么还需要额外的“竖起大拇指”呢?
只是为了检查我没有犯过我编写的测试未涵盖的任何错误吗?

1 个答案:

答案 0 :(得分:-1)

代码审查的目的之一是确保代码正确运行,并确保测试能够反映出来。

但是,由于许多组织将其视为满足组织或法规要求的“竖起大拇指”练习,因此收益有限。

我发现,好的“请求/代码审查”系统背后的真实价值是多方面的,远远超出了“代码是否正常工作?”。

可以通过多种方式编写代码来实现相同的目的。
一个好的代码审查将检查代码的多种因素,而不仅仅是“代码是否运行”。
这些因素可能包括以下一些因素:

  • 有测试吗?
  • 测试质量高吗?
  • 是否考虑过安全问题?
  • 否定测试用例覆盖得很好吗?
  • 是否处理了错误的输入数据的例外?
  • 代码是否与任何依赖项隔离?
  • 代码将来是否容易更改?
  • 代码是否足够有效?
  • 即使是新手,代码也易于阅读吗?
  • 代码是否为DRY,避免了复制和粘贴模式?
  • 代码是否遵循一般或现有的组织设计模式?
  • 是否使用全英语来避免缩略语和符号的未来认知负担?

更高级别的代码审查还具有以下目的:

  • 教育团队其他成员有关变化的信息
  • 鼓励其他观点和方法
  • 避免与代码所有权相关的“忍者” /“英雄”总线问题
  • 为非团队成员(例如qa和其他团队)提供可见性