2008-10-23 143 views
7

我正在尝试使用工具进行自动代码审查和重构。在FxCop或ReSharper的行中。自动代码审查和重构

寻找符合这些要求的工具,建议:

  1. 低的学习曲线。针对C#(也许VB.NET)。
  2. 让我们轻松添加或自定义规则(并理解整个CodeDOM)。
  3. 有据可查。
  4. 免费或低价便宜。 对不起,低汇率=)

手动代码审查仍将完成。但是该工具应该足够彻底,以便在高级开发人员进行手动审查之前捕获所有常见的嘘声。

如果您有故事可以分享您使用过的/正在使用的工具,那么这也会很棒。

谢谢。

编辑: 最后有一段时间来看看更多的建议。 StyleCop不与我正在使用的Visual Studio Express Edition集成。 ReSharper比我需要的功能多得多(这纯粹是为了自动化代码评论)。我会说这不是一个专注于我的目的的工具(也是价格标签的原因)。 仍在寻找其他建议,如果有的话。

EDITDIT: StyleCop不与Visual Studio Express集成,但您仍然可以将它设置为在Visual Studio Express中构建的一部分。看起来像现在最好的解决方案。

回答

3

既然您提到了ReSharper,我建议您查看一个最新版本中提供的共享代码样式功能。通过这种方式,您可以让团队遵循相同的标准和编码风格,并在编码时让他们知道。你可以在这里阅读更多:Sharing Code Styles.

我也一直在一个项目中,我们从Visual Studio运行FxCop作为后期构建过程。您可以按照您希望的方式在FxCop中设置警告和错误,如果您愿意,甚至可以使构建失败。

微软的StyleCop是MSDN代码库的另一个免费的项目,可能是值得一试:

团队系统中有一些不错的功能,但你说便宜,所以我还没有去那里:)

我从这些过程中了解到的最重要的事情是,开发团队需要理解为什么这很重要,每个人都需要购买才能获得成功。一个流氓开发者或承包商可能会让整个事情变得混乱,然后团队的其他成员可能会想为什么甚至会感到困扰。

0

我不知道自动重构,但你正在分析的正确轨道。 FxCop可用custom rules扩展,您可以使用StyleCop直接分析源代码(FxCop检查编译的MSIL)。您也可以tweak StyleCop来处理您的特定要求。就真正的“自动化”而言,你必须编写一些脚本。我被宠坏了,因为我拥有VSTS 2008,自动化通过IDE提供。您可以使用PowerShell等来创建一个脚手架,从而提供高级开发人员/审阅者可以从中工作的第一遍。

+0

一个常见的问题我已经是使用列名来得到一个循环一个DataRow值新手。我希望他们获得循环外部列的索引,并使用索引而不是循环内的名称。 StyleCop能否抓住这些类型的错误。该文件似乎含糊其词。 – Fung 2008-10-23 03:44:07