分析并生成有关代码的统计信息

时间:2009-10-16 22:54:38

标签: code-metrics

我想知道是否有人有任何想法或程序来生成源代码的一般统计数据。

在我的脑海中,我很想知道我的项目代码中有多少函数被调用一次或几次,或者只调用一次实例化的类。

我确信还有很多其他有趣的事情要发现。

我可以使用grep magic做上面这样的事情,但有没有人遇到过工具或技巧?

2 个答案:

答案 0 :(得分:0)

Coverity是我想到的第一件事。它目前提供(在他们的products之一)

  • 软件DNA Map™分析系统:生成整个构建系统的综合表示,包括对每行代码进行语义正确的解析。
  • 缺陷管理器:直观的界面可以轻松建立缺陷的所有权,并通过反映现有开发过程的自定义工作流程来解决这些缺陷。
  • 本地分析:允许在开发人员的桌面上本地分析代码,以确保在与其他开发人员共享之前的质量。
  • 布尔可满足性:根据布尔值将代码转换为问题,然后应用SAT求解器进行最准确的缺陷检测和可用的最低误报率。只有Prevent提供了这种专有方法的附加精度。
  • 竞赛条件检查器:具有业界首创的竞赛条件检查器,专为当今复杂的多线程应用程序而构建。
  • 路径模拟:模拟100%的所有值和数据路径,从而能够检测到最关键的缺陷。
  • 统计&过程间分析:通过基于先前观察到的行为推断出正确的行为并执行类似于执行Bin的整个程序分析,确保对整个构建系统进行全面分析。
  • 虚假路径修剪:有效消除假阳性,防止平均FP率约为15%,部分用户报告FP率低至5%。
  • 增量分析:完全或逐步分析源代码,通过仅检查受更改影响的组件,可以节省时间。
  • 报告:通过可自定义的报告测量软件质量趋势,以便您可以显示按检查器,分类,组件和其他缺陷信息分组的缺陷。

答案 1 :(得分:0)

有很多工具可以做到这一点。但是afaik它们都不是语言独立的(反过来这几乎是不可能的,例如某些语言甚至可能没有功能)。

通常,您会在“代码覆盖率工具”或“分析器”类别下找到这些工具。

对于.Net,您可以使用Visual Studio或Clrprofiler。