计算代码指标

Bjo*_*pen 87 metrics

是否有任何工具可用于计算项目的代码度量(例如代码行数,圈复杂度,耦合度,内聚力),并且随着时间的推移产生一个显示趋势的图表?

aku*_*aku 67

在我的最新项目中,我使用了SourceMonitor.这是一个很好的代码度量分析免费工具.
以下是SourceMonitor官方网站的摘录:

  • 通过源文件快速,单次传递收集指标.
  • 衡量用C++,C,C#,VB.NET,Java,Delphi,Visual Basic(VB6)或HTML编写的源代码的度量标准.
  • 包括C++,C,C#,VB.NET,Java和Delphi的方法和功能级别度量.
  • 在检查点中保存指标,以便在软件开发项目期间进
  • 在表格和图表中显示和打印指标.
  • 使用XML命令文件在标准Windows GUI或脚本内部运行.
  • 将度量标准导出为XML或CSV(逗号分隔值)文件,以便使用其他工具进行进一步处理.

对于除NDepend之外的 .NET,这是最好的工具,我可以推荐vil.

以下工具可以执行趋势分析:

  • 现在有一个用于C++的CDeDepend的NDepend类型工具 (2认同)
  • @Kevin混合理论仔细阅读许可证 - 您可以在任何您无法销售的环境中使用它."也就是说,您可以将此可执行文件用作您自己的软件开发工作(商业或其他方面)的一部分,但您可能不会将其出售......" (2认同)

Rom*_*las 12

声纳绝对是您必须考虑的工具,尤其是对于Java项目.但是它也将处理PHP或C/C++,Flex和Cobol代码.

以下是显示项目某些指标的屏幕截图:

alt text http://sonar.codehaus.org/wp-content/uploads/2009/05/squid-metrics.png

请注意,您可以在http://nemo.sonarsource.org上使用他们的演示站点来尝试该工具


Iai*_*der 8

NDepend for .net


sve*_*ven 8

我也在为我的IDE寻找代码度量工具/插件,但据我所知,没有(对于eclipse)也显示了指定时间段内复杂性的图表.但是,我确实找到了eclipse metrics插件,它可以处理:

  • McCabe的Cyclomatic Complexity
  • 传出耦合
  • 方法缺乏凝聚力
  • 方法中的代码行
  • 字段数
  • 级别数
  • 范围内的当地人数
  • 参数数量
  • 报表数量
  • 每类加权方法

在使用它的同时,我也没有错过您正在寻找的图形选项.
我认为,如果你找不到任何可以随时间处理图形的插件/工具,你应该看看最适合你的工具,并为你提供所需的所有信息; 即使给定的信息仅用于项目的当前构建.

作为旁注,eclipse metrics插件允许您将数据导出到外部文件(链接转到示例),因此如果您使用源控制工具,并且您应该!,您始终可以导出特定数据构建和存储文件以及源代码,这样你仍然有一种(基本)方式可以追溯并检查差异.