首页 > windows下 Source Monitor代码度量工具的使用

windows下 Source Monitor代码度量工具的使用

windows下 Source Monitor代码度量工具的使用

引用链接:

https://www.cnblogs.com/xuehanyu/p/4520965.html

1.总体介绍

SourceMonitor是一款免费的软件,运行在Windows平台下。它可对多种语言写就的代码进行度量,包括C、C++、C#、Java、VB、Delphi和HTML,并且针对不同的语言,输出不同的代码度量值。

像其他代码度量工具一样,SourceMonitor只关注代码,并为编码人员提供及时的反馈,它不是一款项目管理工具,不关注项目实施中从功能分析到设计编码,再到测试这整个过程。

度量指标

SourceMonitor只是一个“度量”工具,但是通过基本的度量,可以从代码表面层次发现1些根本的,基础的问题,所以将其作为介绍的第一个工具,也应当做为最基础的一个工具来为软件质量把关。

说到SourceMonitor的度量,对不同的语言提供不同方面的度量,这里仅针对C++进行介绍,其提供了以下几方面的度量。(关于其他语言,请参考SourceMonitor的帮助文档Explanation of Language Metrics章节)

总行数(Lines)

包括空行在内的代码行数。

语句数(Statements)

在C++中,语句是以分号结尾的。分支语句if,循环语句for、while,跳转语句goto都被计算在内,预处理语句#include、#define和#undef也被计算在内,对其他的预处理语句则不作计算,在#else和#endif、#elif和#endif之间的语句将被疏忽。

分支语句比例(Percent Branch Statements)

该值表示分支语句占语句数目的比例,这里的“分支语句”指的是使程序不顺序履行的语句,包括if、else、for、while、break、continue、goto、switch、case、default和return。需要注意的是,do不被计算在内,由于其对应的while已计算了。另外,异常处理的catch也被作为1个分支计算。

注释比例(Percent Lines with Comments)

该值唆使注释行(包括/……/和//……情势的注释)占总行数的比例。1般公司会对每一个文档的header或footer部份进行特殊的声明注释,可以再工程属性中设置过滤,不计算在内。

类个数(Classes)

包括class,struct和template在内的个数。

平均每一个类方法数(Methods per Class)

平均每一个类的方法数,即包括内联和非内联的,template函数在内的类方法数除以所有类的个数。

函数个数(Functions)

所有函数的个数。

平均每一个函数包括的语句数目(Average Statements per Method)

总的函数语句数目除以函数数目得到该值。

函数圈复杂度(Function Complexity)

圈复杂度唆使1个函数可履行路径的数目,以下语句为圈复杂度的值贡献1:if/else/for/while语句,3元运算符语句,if/for/while判断条件中的"&&"或“||”,switch语句,后接break/goto/ return/throw/continue语句的case语句,catch/except语句等。对应有最大圈复杂度(Max Complexity)和平均圈复杂度(Avg Complexity)。

函数深度(Block Depth)

函数深度唆使函数中分支嵌套的层数。对应有最大深度(Max Depth)和平均深度(Avg Depth)。

关于SourceMonitor的安装,我们可以在其官方网站:http://www.campwoodsw.com

在安装完成后我们来尝试使用这个软件。

软件使用

打开软件后点击File->New Project来创建一个新的项目,之后需要经过如下几个步骤:

1.程序语言选择,这里我们选择Java语言;

在这里插入图片描述

2.命名当前项目并选择保存路径;

3.选择该项目要度量解析的文件,可以通过XML配置文件导入,也可通过选择项目目录通过扩展名自动筛选文件;

4.选择项目配置,这里可以根据自己的需要去选择这三项,我们选择不修改直接下一步;

5.选择项目保存的格式,这里我们选择New SourceMonitor project format;

6.创建项目的第一个检查点并命名,如果涉及到UTF-8格式编码的,可以选择下面的选项窗口;

7.最后再确认以上所选择的所有信息,如有错误点击上一步退回重新选择,无误则单机完成;

8.完成后确认要度量的文件列表;

9.这样项目就成功建立了,并且完成了第一个度量点的建立;

10.双击我们刚才创立的度量点,我们可以看到项目中包含的各个Java文件的度量值;

11.双击文件我们可以看到对这个文件进行分析的详细内容;

这样,SourceMonitor的安装和使用方法就简单的介绍完了。

下面再简要提一下在Eclipse中集成SourceMonitor的方法:

点击Run->External Tools->External Tools Configurations…

点击左上角的添加图标或者在Program处右击选择New

填写Name、Location、Arguments如下如所示,之后点击Apply

此时再单击该窗口中的Run(以后可以点击Run->External Tools→SourceMoniter)即可运行处当前Eclipse中项目的SourceMonitor结果了

更多相关:

  • 零(将字符串转化成数字的函数)       int num = atoi(arr);      该函数具有把字符串转化成整型数的作用。 壹(vim显示行号)       Linux终端下直接输入vim   ~/.vimrc,打开是一个空白的页面,然后进入插入模式,直接输入set nu,然后保存并退出,以      后每次  ...

  •   python基础知识(二)   (二)常用控制流 1、控制语句 分支语句:起到一个分支分流的作用,类似马路上的红绿灯 循环语句:for while 可以使代码不断重复的执行   2、判断语句:关键字是if..elif..else  a、if条件语句后面可以接比较运算、逻辑运算、成员运算;当if后面的语句满足条件,允许的结果是Tru...

  • 1.Python : 是一门解释型 弱类型 高级开发编程语言. 2.第一个Python程序的编写: print ("hell,world") 3.变量:把程序运行过程中的值储存起来,方便后面的程序调用. 4.变量的命名要求: 1,只能是数字或字母或下划线组成; 2,不能是数字开头,也不能全是数字; 3,不能是Python的关键字; 4...

  • 一 程序的三种基本结构              顺序结构:程序从上往下依次执行,这个叫顺序结构         分支结构:有选择的执行或者不执行某段代码         循环结构:重复的执行某段代码 二 分支结构之if 最简单的俩种用法   (tips: if语句后面的大括号可以省略:如果省略:那么这个if语句只能管理离它最近的那...

  • 1打开vlc播放器 点击媒体菜单  选择打开网络串流 2输入RTSP播放地址 3点击播放右下角箭头选择串流 4修改为HTTP,点击添加 5设置请求端口和路径 6选择输出格式 完成后即可使用 H5video标签播放  

  • 选择缓冲区和剪切板 不同于Windows,Linux系统里存在两个剪切板:一个叫做选择缓冲区(X11 selection buffer),另一个才是剪切板(clipboard)。 选择缓冲区是实时的,当使用鼠标或键盘选择内容时,内容已经存在于选择缓冲区了,这或许就是选择缓冲区的由来吧。 使用下面的命令查看选择缓冲区的内容:: $ x...

  • 1、按 Ctrl+Shift+P 2、输入install,选择install Package 3、输入vue,选择 vue syntax hightlight    如果上述方法不起作用,可以选择在下面连接中下载文件,手动安装 如何让你的.vue在sublime text 3 中变成彩色?   转载于:https://www...

  • http://www.blogjava.net/wangdetian168/archive/2011/04/12/348651.html   1、Ext.grid.GridPanel 主要配置项: store:表格的数据集 columns:表格列模式的配置数组,可自动创建ColumnModel列模式 autoExpandColum...

  • 部署VMware vSphere 5.5 ################################################################################# ver1.0 2014-09-09 #### 本文内容来自 中国专利信息中心 - 基础系统处 — 张阳## 如有转载,请务必保留...