除了 FxCop 外,有哪些用于 .NET 代码分析的替代品?

5

我想知道是否有其他的代码分析工具可供选择。我认为可以从头开始创建代码分析器,但这是一项繁琐的工作,我不确定它是否值得。是否有其他非 .net 特定的分析工具可用?

谢谢, Sun


1
有各种各样的工具可用于执行各种不同的任务,这些任务可能被视为“代码分析”。您正在寻找特定的内容吗? - Nicole Calinoiu
我们需要的第一件事是编码标准,我认为StyleCop可以做到。另一个是代码复杂度,虽然它仍然很模糊;基本上取决于工具的输出...我们无法确定我们正在寻找什么,但我们不需要FxCop的输出(或者至少大部分不需要)。 - Sunscreen
5个回答

6

NDepend 是一款商业工具(也有开源/学术版),可以为你做各种分析。尽管它与 FxCop 在某些规则上重叠,但它拥有更多的功能。

我想一个人可以从零开始创建代码分析器

一切皆有可能,但编写任何有意义的验证工具都需要大量时间。如果你的老板付钱给你开发软件,那么你将会浪费他的钱。编写自己的分析器是一个好的练习,但这将进一步成为完全浪费时间。


谢谢您的回答,但目前我们只寻找免费软件版本。 - Sunscreen

4

谢谢您的回答,但目前我们只寻找免费软件版本。 - Sunscreen
Sonar的C#分析主要依赖于StyleCop、FxCop和Gendarme。 - reinierpost
这已不再是事实。SonarC#现在主要依赖于其自身的引擎和规则集。 - Amaury Levé

4

谢谢您的回答,尽管它只适用于VS2010,否则需要使用Mono编译器... - Sunscreen
3
Gendarme不需要使用Mono来执行(也就是说,在Windows上使用MS.NET可以正常运行),也不需要使用Mono编译器或工具进行编译(例如,Gendarme的Win32版本是使用VS2010构建的)。因此,Gendarme可以在任何地方运行(有一个.NET虚拟机),并且可以对任何已编译的IL执行。 - poupou

1

我的公司提供多种分析 C# 的工具。

您在广泛地询问分析工具,因此我会假设您不仅仅对静态分析感兴趣。我们还为 C# 提供(基于动态分析的)测试覆盖率和性能分析工具。


谢谢您的回答,但目前我们只寻找免费版本。 - Sunscreen

1

正如Davide Piras所说,你应该绝对地看一下Sonar C#插件生态系统。我是该项目的主要贡献者之一,但我并不属于SonarSource。

这些插件和Sonar本身都是开源的。许可证是LGPL,因此对商业友好。

如果你想在C#项目上看到Sonar的实际效果,请查看演示实例:

http://nemo.sonarsource.org/dashboard/index/org.mybatis:mybatisdotnet

官方文档在这里可用:

http://docs.codehaus.org/display/SONAR/C-Sharp+Plugins+Ecosystem

如果您需要帮助或对安装过程有任何疑问,请随时订阅用户邮件列表:

http://www.sonarsource.org/support/support/


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接