使用 SlickEdit 工具进行代码审查(第一部分)






3.57/5 (4投票s)
本文是系列文章的第一部分,展示了使用 SlickEdit® Tools 进行代码审查的有效方法。
引言
作为一名开发人员,我一直在寻找能帮助我更快完成工作、让任务更轻松的工具。本系列文章将向您展示如何利用 SlickEdit Tools 中的部分功能,有效地组织和执行代码审查。
我不能说我遇到过多少开发人员会热切期待代码审查。大多数开发人员都理解代码审查的重要性,但许多人却经历过糟糕的代码审查带来的痛苦。虽然 SlickEdit Tools 没有“代码审查”功能,但它提供了多种功能,可以组合使用,使代码审查顺利进行。一个做得好的代码审查过程,可能会带来开发人员的厌恶与开发人员的认可之间的差异。
因为代码审查是一个很大的话题,本文将重点介绍一些代码审查之前的步骤。代码审查通常侧重于单个开发人员的工作,所以我们从这里开始。我们将对开发人员 ID 为 SLICKEDIT\shackett
(或 Scott)的源代码管理进行代码审查,我们将审查他自 2008 年 3 月 3 日以来的工作,那是我们上一个(虚构的)发布日期。
查找要审查的最佳文件
我们的第一个挑战是找出 Scott 自 2008 年 3 月 3 日以来工作过的文件集。我们将使用 SlickEdit Tools 版本控制工具箱的查找版本功能作为起点。

查找版本允许您查询解决方案中源代码文件的版本。代码审查组织者可以使用此功能查找理想的文件集进行审查。只需点击 SlickEdit > 查找版本即可调出查找版本工具窗口。对于此示例,我们将使用以下条件查找版本
- 自日期起:查找自特定日期(例如上次发布)以来所有签入的版本。
- 开发人员姓名:查找由一个或多个特定开发人员签入的所有版本。
这两个条件用于查找 Scott 在最新开发周期(2008 年 3 月 3 日至今)内签入的所有版本。
任何开发团队都没有资源来审查该列表中所有文件,因此找到最佳候选文件进行审查非常重要。因此,接下来的任务是查看结果并找到一些代表最重要或最复杂代码的文件样本。您可能还会包含一些由该开发人员签入次数较多的文件,这表明更改率或流失率较高。这些是理想的审查候选文件。将这些文件的名称通过电子邮件发送给所有将参与代码审查的开发人员。

在此示例中,PackageBaseWhidbey.cs 进行了多次更改,并且是一个非常重要的文件,因此我们将把它纳入代码审查过程。
加载要审查的文件
当开发人员准备编写审查意见时,他们应该关闭所有其他文件,并打开代码审查组织者发送的列表中的文件。这可以通过使用编辑工具箱中的加载文件功能快速完成,该功能允许您快速筛选解决方案中的文件列表并打开您正在查找的文件。点击 SlickEdit > 加载文件即可使用此功能。

通过在过滤器中键入 basew
,我们将列表中的文件缩小到仅包含文件名中包含该文本的文件。我们将选择并打开 PackageBaseWhidbey.cs。
隔离开发人员的工作
审查另一个开发人员的代码时最困难的事情之一是实际识别该开发人员所做的工作,尤其是在作为团队的一部分完成时。打开 PackageBaseWhidbey.cs 后,我们将使用版本控制工具箱的版本可视化工具功能来查看 Scott 处理了哪些部分。单击 SlickEdit > 版本可视化工具以显示此工具窗口。接下来,在工具窗口顶部的下拉列表中选择默认用户方案。

文件版本将被处理,工具窗口将列出所有为文件当前状态做出贡献的开发人员的姓名。编辑器也会被着色,分成行段,识别出文件的每一行是由谁编写的。

您可以在工具窗口列表中找到 Scott 的名字(SLICKEDIT\shackett
),双击它即可跳转到他贡献的第一行代码。然后,您可以使用工具窗口上的“下一页”和“上一页”按钮来浏览他的工作块。
为了使 Scott 的工作更加突出,请在列表中选择他的名字(SLICKEDIT\shackett
),然后单击切换选择可见性工具栏按钮。启用后,Scott 的工作将突出显示,而其他开发人员的工作将变暗。这使您可以快速查看哪些代码是 Scott 的,哪些代码不是。您可以再次单击此按钮以将其关闭。

另一个选择是给斯科特分配一个独特的颜色。为此,请单击版本可视化工具工具栏上的配置可视化方案按钮。这将弹出方案生成器对话框。我们将创建一个新方案,以突出显示斯科特处理过的所有代码区域。单击添加新方案按钮,并将方案命名为Scott's code
。现在我们可以为斯科特添加一个方案项,并将其颜色设置为亮红色。

我们可以保存此可视化方案,然后通过在版本可视化工具下拉菜单中选择它来应用它。相同的方案可以应用于任何文件,以突出显示 Scott 编写的代码区域。

如果您发现被审查的开发人员编写的一段代码看起来可疑,您可能需要更多关于开发人员意图的上下文,例如该代码段签入时的签入注释。这些信息对于创建有意义的代码审查注释非常重要。最简单的方法是查看该代码是在哪个版本中签入的,并查看与该版本关联的注释。为此,请在版本可视化工具工具窗口顶部的下拉列表中选择默认相对年龄方案。

文件版本将再次被处理,但现在工具窗口将列出所有为文件当前状态做出贡献的版本 ID。编辑器也会被着色,分成行段,识别出文件的每一行是由哪个版本最后更新的。每个段的颜色与它签入的版本年龄相对应(深色表示最旧;浅色表示最新)。
您可以找到与可疑代码关联的版本,并查看与其关联的注释。您还可以像以前一样使用下一页和上一页按钮来查看文件中由于该签入而更新的所有代码。例如,我们可能不同意 AddMenuCommandHandler
函数设置为 public。我们可以看到该更改是版本 762 的一部分。通过在版本可视化工具工具窗口中将鼠标悬停在该版本上,我们可以更好地理解为什么该函数被设置为 public。所有这些功能都帮助团队判断要审查哪些代码。它们还提供了一些关于被审查的开发人员在签入一组代码时可能有的动机的见解。
接下来是对代码进行实际评论的任务。这项任务最好以电子格式完成,以便在代码审查会议中汇总。本系列的下一篇文章将介绍 SlickEdit Tools 的一些功能,这些功能有助于编写关于代码的评论,并将其直接绑定到源代码,而无需修改文件。
亲自试用
在 SlickEdit,我们相信您会像我们一样对 SlickEdit® Tools 2.0 for Microsoft Visual Studio 的最新版本感到兴奋。下载试用版并亲自尝试一下。