冗余代码检查工具Simian

微软web2.0开发示例Kobe,重蹈了Oxite的覆辙。Ayende连续发表了五篇高质量的Kobe探讨贴:

  • Kobe – In the nuts & bolts and don’t really liking it
  • Kobe – Data Access done wrong
  • Kobe – When the documentation is the only delivery that matters
  • Kobe – an example of exception handling done wrong
  • Kobe – Architectural Overview

Ayende使用Simian工具对代码进行静态分析,发现位于67个文件中的873个方法共有5138行代码是重复的。进入正题,介绍一下Simian这个冗余代码检查工具,目前的版本是2.2.24,不光是c#代码,它也可以用来检查C, C++, COBOL, Ruby, JSP, ASP, HTML, XML, Visual Basic等格式的代码。simian并非免费工具,如果你用它来检查开源代码或非商业代码的话,它是免费使用的,如果是商业应用的话,就需要付费了。  

使用方法:

    到官方站点上下载最新的版本,下载完毕后,将文件解压,将simian所在的路径添加到windows环境变量path下,同时,将simian-2.2.24.exe的文件名改成simian.exe,这样方便我们的使用,simian是命令行工具,在cmd中运行simian即可:

c:/>simian.exe [options] files

下面介绍具体的使用方法:
  • 检查包括子目录下的所有的c#文件:
"-includes=*.cs"
  • 检查当前目录下的所有c#文件 ,并且只检查代码3行以上重复的代码
-threshold=3 "*.cs"
  • 检查所有的c#文件:

"*.cs"

使用命令行输出的话,对于代码的定位不是很方便,可以通过Visual Studio的外部工具(参看http://blogs.conchango.com/howardvanrooijen/archive/2006/02/08/2776.aspx)或者Howard van Rooijen's 写的一个工具MonkeyWrangler。也可以整合到持续集成中,可参看DotNet持续集成环境构建及配置之安装篇,DotNet持续集成环境构建及配置之配置篇。

你可能感兴趣的:(冗余代码检查工具Simian)