代码评审有哪些方法

Z, ZLW 1854

代码评审的方法有以下4种:1、即时代码评审;2、同步代码评审;3、基于会议的代码评审;4、基于工具的代码评审。在即时代码评审下,开发人员正在编写代码,而审阅者坐在旁边,同时阅读代码并在运行中更正代码。

1、即时代码评审

审查代码的最直接形式是即时代码审查技巧。在这种情况下,开发人员正在编写代码,而审阅者坐在旁边,同时阅读代码并在运行中更正代码。也被称为配对编程,这个过程最适合于高度复杂的程序,在这些程序中,两个头脑可以更快、更有效地解决问题。

虽然这一过程看起来对公司有利,但实际上,这项技术所需的时间和人力使其不利。两个或更多的人一起编写代码意味着每个开发人员的平均行数更少。如果审阅者立即为复杂问题提供持续的支持或解决方案,则更正的中断也会中断代码作者的工作流程,并且开发人员的学习曲线会受到阻碍。

2、同步代码评审

这是最常用的流程,约75%的公司参与了同步评审。在这种类型的同步方法中,编码器生成代码,然后要求审阅者审阅代码。评审员在屏幕上与编码员会合,一边讨论代码,一边评审代码。它的实施是明智的,因为它是非正式和自发的。只有当评审员当时在场或中断了编码器的速度时,该过程才会成功。

这种方法遗漏错误和小故障的概率很高,因为大多数情况下,审阅者缺乏对任务目标的了解。没有立即进行审查,以产生更好的结果,正如团队在细化会议上以及在前期讨论的任务中所做的那样。

同步评审通常只会导致开发人员知道项目的目标。这个过程的主要问题是强制上下文切换。想象一下,你自己开发复杂的软件,然后被你的初级成员打电话进行同步评审。你必须立即离开你的工作站去查看你同事的代码。突然离开工作会造成疲惫和沮丧。

3、基于会议的代码评审

这是最不常用的流程,只有44%的人每月使用一次。在基于会议的代码评审中,程序员完成他们的工作,并召开会议。整个技术团队坐在一起,评论并试图共同改进代码。这是一个临时过程,因为考虑到时间的长短、当时劳动力的流失、效率的降低以及无法让整个团队团结在一起,它不太可能持续执行。

只有当整个团队对代码评审过程缺乏经验时,基于会议的代码评审才有意义。它包括将整个团队聚集在一个房间里,分享想法,并多次解决问题。这有助于每个团队成员更清楚地了解流程。在使用这种方法的公司中,只有一半以上的公司,这种方法不足以作为代码质量保证标准。

4、基于工具的代码评审

这个过程不是由一个团队一起完成的,至少不是在同一个屏幕上。它也称为异步代码检查。在这种情况下,一旦代码完成,程序员就可以让其他人查看。审查者将在屏幕上审查代码,评论甚至修改代码中的错误。然后通知程序员她的日程上有谁将改进它。如果没有更改,代码将标记为没有改进意见,软件将获得批准。

基于工具的代码审查消除了上述两个过程中的主要问题,即直接依赖性。由于编码人员和审阅人员都在按照自己的时间表工作,因此也消除了强制上下文切换。但是,正如任何其他方法都有其缺点一样,基于工具的技术有许多评审循环,这需要大量时间,就像基于会议的流程一样。

拓展阅读

代码评审的好处

  • 代码评审捕捉bug
  • 代码评审促进团队和个人开放度
  • 代码评审提升团队交付标准
  • 代码评审激励团队协作
  • 代码评审保持安全至上
  • 代码评审构建社会认可

回复

我来回复
  • 暂无回复内容

注册PingCode 在线客服
站长微信
站长微信
电话联系

400-800-1024

工作日9:30-21:00在线

分享本页
返回顶部