Gendarme和FxCop看起来非常相似,似乎在解决同样的问题。对于一个小型的开发团队(3-5个),主要从事web应用程序的开发,有很多业务逻辑,你会推荐哪一个?为什么?
发布于 2012-04-02 19:34:47
Gendarme确实是FxCop的Mono等价物。鉴于微软计划在下一代Visual Studio的大多数版本中提供相当多的代码分析规则,您可能希望使用FxCop并坚持使用它。如果你的Visual Studio版本支持(Visual Studio2010高级版和旗舰版),FxCop的集成版本(称为代码分析)是最容易使用的。
有一个Visual Studio插件,它也允许你使用run FxCop from inside Visual Studio Professional。您需要download FxCop 10 separately (it's part of the Windows Platform SDK)。请注意Visual Studio integrated version comes with a few additional rules,因此输出可能会有所不同。
因为Gendarme没有直接集成到Visual Studio (though you can make it part of the build process)中,所以你不会看到很多使用Visual Studio的人使用Gendarme。主要是因为它不太为人所知。
最后,我会从方便的角度使用FxCop。它被集成到我默认使用的Visual Studio版本中,并且在开发人员社区中广为人知。
但如果你没有使用Visual Studio Premium或Ultimate,那么你可以选择其中之一,甚至两者都选。请记住,如果您选择两者,您可能会收到许多重复的消息,甚至冲突的消息,因为这些不同工具的创建者并不总是一致的。
如果您不介意投资一些钱,那么,正如niaher所建议的那样,Resharper或Coderush是非常有用的补充(我不会将它们称为替代,因为它们不会在集成开发环境之外运行(例如,在持续集成构建中)),因为它们在编写代码时提供了直接的反馈。通常甚至不需要编译它。而且它们通常提供了“应用修复”的能力,而您不必确切地弄清楚要做什么。
发布于 2012-06-28 21:27:06
FxCop/Gendarme的一个替代或很好的补充是使用商业工具NDepend。有了这个工具,你就可以在(namely CQLinq)上用编写代码规则。免责声明:我是该工具的开发人员之一
默认情况下提出的不仅仅是200 code rules,这些包括设计、架构、代码质量、代码演变、命名约定、死代码、.NET Fx使用……
CQLinq致力于编写代码规则,这些规则可以是verified live in Visual Studio,也可以是verified during build process and reported in an HTML/javascript report。
与FxCop或Gendarme相比,CQLinq的优势在于,编写代码规则非常简单,并且可以立即得到结果。建议使用工具来浏览匹配的代码元素。具体来说,这看起来是这样的:
https://stackoverflow.com/questions/9970948
复制相似问题