软件开发工具

值得尝试的 8 款代码评审工具

连续几个小时写代码已经够难了,还要自己检查代码错误,既痛苦又低效。

那么,怎样才能结束这种折磨?找同伴帮忙!没错。让一双新眼睛看看项目,往往能把代码打磨得更好。这正是源代码评审的意义。

代码评审工具

你可能会问,什么是代码评审?同伴代码评审是确保代码没有错误、质量过硬,并符合相应规范的可靠方式。

虽然在线代码协作发生在人类开发者之间,但代码评审工具可以帮助评审者在质量保障上多走一步。我们整理了一份实用、安全的代码评审软件清单,供你和你的评审同伴试用。

不过,在进入工具清单之前,先看看代码评审通常是怎么做的。

如何进行代码评审

经验丰富的评审者在代码评审过程中会使用几种常见方法:

方法

说明

“检查”法

这个词听起来可能有点严肃,但它确实是早期代码评审中使用的术语。这个方法由 Michael Fagan 提出,被认为是一种正式评审方式:多名参与者经过多个阶段,只依靠打印出来的代码和自己的大脑,逐行审查代码。

基于变更的代码评审

这种方法更简单,重点关注代码库中的变更。评审者通常会借助软件工具完成评审。

肩并肩评审

这种方法会请另一位开发者在作者写代码时“站在旁边看”,即时提供反馈。

传阅式评审

这种方式会让一组评审者参与进来,由管理系统通过邮件把代码发送给团队成员,方便他们立即评审。

如何让代码评审更高效

编辑同伴的代码并留下评论当然有帮助,但现实是,这种方式留给解释的空间并不多。作者学不到太多东西,作为开发者也就很难真正进步。

我们在打造领先的商务视频托管平台之一时,亲身体会到了这一点。由于团队远程办公,每完成一次代码评审,我们都必须提供足够上下文。后来我们发现,解释修改并节省时间的最好方式,是在完成评审时录制电脑屏幕。

这也是我们创建 ScreenRec 的原因。使用 ScreenRec,你可以轻松录制屏幕,带同事一步步看完整个评审过程。完成代码评审后,只需把安全观看链接发送给作者,就能立即分享录制内容。亲自试试看

代码质量

7 款热门代码评审工具

了解了代码评审的基础之后,我们来看看这些值得尝试的优秀代码评审工具。

1. Gerrit

在线代码协作

Gerrit 是一款基于 GIT 版本控制系统构建的开源工具。它的一个突出优点是,允许多位评审者同时参与同一个项目。

每个人都可以实时查看代码库中的全部变更。Gerrit 还提供评论和讨论平台,强调评审各个阶段的协作。

特色功能

  • 支持 Git 的 SSH 和 HTTPS 服务器
  • 提供服务端插件

价格

免费

2. Phabricator

如何进行代码评审

这是一款一体化代码评审工具。Phabricator 是开源应用,让协作者可以在代码评审软件中轻松协作。从评审本身,到讨论能力、规划工具、代码测试,甚至圈复杂度等复杂度指标,评审者可能想要或需要的功能,Phabricator 基本都有。

特色功能

  • 能够代理代码仓库,从其他来源读取内容
  • 配备工作看板,可分配评审任务并查看修改或新增内容
  • 聊天功能

价格

免费,或每位用户每月 $20

3. Atlassian Crucible

代码评审流程

这款 Web 应用关注的不只是同伴评审,更是代码改进。它的跟踪功能让用户可以追踪每段代码的变更,以及其他协作者执行的各种操作。它还提供报告功能,让评审者有机会写清楚自己修改的原因。

特色功能

  • 基于 Web
  • 轻量,并采用正式代码评审方法
  • 行内讨论

价格

最多 5 位用户 $10

4. Review Assistant

同伴代码评审

Review Assistant 能帮助团队在整个开发流程中保持有序,一直到评审阶段。它的流程很简单:评论代码、修复代码、验证代码。此外,Review Assistant 还会提供详细报告,展示每位成员完成的工作。它是一款简单应用,却能轻松承担评审工作量。

特色功能

  • 支持 Visual Studio
  • 可自定义工作流
  • 在代码中讨论

价格

3 位用户免费,或 10 位用户 $349.95

5. Reviewable

安全代码评审

Reviewable 是那种能让每个人掌握进展的应用。它减少了繁琐的管理工作,并提供完全可自定义的逻辑,帮助你判断评审是否真正完成。它的界面也很清爽,让内容保持整洁有序。

特色功能

  • 仅支持 GitHub
  • 并排布局,方便处理 diff
  • 跟踪代码中的讨论,在解决前不会让它消失

价格

免费,或 10 位用户每月 $39

6. ReviewBoard

源代码评审

如果你想要简单工具,ReviewBoard 可能正合适。它去掉了花哨功能,只保留完成评审所需的内容:编辑器和评论能力。即便如此,它也能把事情做好,还附带语法高亮,方便阅读。

特色功能

  • 可评审原型图、图片和 PDF 文件
  • 配备问题跟踪器
  • 评论显示在代码旁边

价格

自行安装免费;RB Hosting 上 10 位用户每月 $29

7. JArchitect

源代码评审

JArchitect 专为 Java 代码打造,会深入分析代码库,并发送完整报告,指出可能的错误和需要改进的区域。凭借代码查询、问题管理、趋势监控等功能,它会尽力帮助开发者避免后续问题和挫败感。

特色功能

  • 复杂构建对比和代码 diff,便于跟踪最新进度
  • 80 多项代码质量指标
  • 自动估算技术债

价格

许可证和订阅预估 $500+(实际价格以个人报价为准)

8. Codementor

同伴代码评审

如果你更喜欢实时 1 对 1 代码评审,Codementor 就很适合你。平台上有超过 12,000 位经过审核的导师,你可以联系经验丰富的开发者,在发布前帮你评审代码并确保质量过关。

特色功能

  • 拥有庞大的认证导师社区,可提供实时 1 对 1 代码评审
  • 提供内置消息工具
  • 提供 NDA 选项,保护你的代码

价格

取决于导师,通常从每 15 分钟 $10 起

总结

显然,高质量代码评审并不一定困难。借助代码评审工具和 ScreenRec,你可以轻松评审项目、详细解释修改,并展开讨论。从长期看,也有很多方式能提升你的编码能力。说不定,你很快也会成为软件质量保证(SQA)高手。

参考资料与延伸阅读

Twitter
Facebook
Linkedin

不要错过

获取新文章、网络研讨会和其他机会的最新消息: