SourceMonitor 可用于C++开发的免费代码度量工具

SourceMonitor 可用于C++开发的免费代码度量工具
代码度量(Code Metric)属于软件度量(Soft Metric)的范畴。很多人希望能够统计自己源码工程中的代码行数,实际上这就是Code Metric的初级形式。在很多开发标准中,都定义了Metric相关内容。如IEEE、CMM/CMMI。
Code Metric有若干重要指标。一款开源的Metric分析软件C and C++ Code Counter的分析报告书中阐述了如下指标:

    NOM = Number of modules
    LOC = Lines of Code
    COM = Lines of Comments
    MVG = McCabe's Cyclomatic Complexity
    L_C = Lines of code per line of comment
    M_C = Cyclomatic Complexity per line of comment
    IF4 = Information Flow measure

顾名思义,NOM是模块数量,即源码工程中包含多少模块。LOC是代码行数,这里不包括空行和注释。COM是注释行数。MVG是复杂度。L_C是每行注释代码行数,M_C是每行注释复杂度。IF4,信息流测定。(由于没有找到中文的翻译和释义,仅凭个人理解罗列翻译)
微软的VSTS2008提供Metric功能,但无法针对C++使用。CCCC(C and C++ Code Counter)似乎已经停止维护,命令行模式,不易使用。一些商用工具功能强大但过于昂贵。
SourceMonitor是一个不错的选择:
※免费使用
※Windows下GUI界面
※功能较为强大,可保存用于比较的基线(Baseline)

http://www.campwoodsw.com/index.html


参考资料:
http://blogs.msdn.com/fxcop/archive/2007/02/28/announcing-visual-studio-code-metrics.aspx  C# Code Metrics
http://en.wikipedia.org/wiki/Software_metric 维基百科Software Metric
http://blog.csdn.net/summerfang/archive/2006/09/04/1176916.aspx 使用source monitor帮助进行代码重构 

追记:
1.UTF编码的文件将不被识别和读取。CCCC和SouceMonitor都存在这个问题。SourceMonitor有相关的选项,可能是我操作问题,失败了……
2.SouceMonitor统计出来的代码行数偏低。主要原因可能是没有计算大括号…… 在我目前开发的项目中,根据现有的编码规范,是否计算大括号的统计差异为40%。
3.适当的使用CCCC也是不错的。有些统计值CCCC较为完整。

你可能感兴趣的:(SourceMonitor 可用于C++开发的免费代码度量工具)