代码检查工具CheckStyle简介和使用

CheckStyle是什么?设计模式

  CheckStyle是SourceForge下的一个项目,提供了一个帮助JAVA开发人员遵照某些编码规范的工具。它可以自动化代码规范检查过程,从而使得开发人员从这项重要,可是枯燥的任务中解脱出来[1]。工具

  2.2. CheckStyle检验的主要内容优化

  CheckStyle默认提供一下主要检查内容:ui

  ·Javadoc注释编码

  ·命名约定spa

  ·标题插件

  ·Import语句命令行

  ·体积大小设计

  ·空白代码规范

  ·修饰符

  ·块

  ·代码问题

  ·类设计

  ·混合检查(包活一些有用的好比非必须的System.out和printstackTrace)

  从上面能够看出,CheckStyle提供了大部分功能都是对于代码规范的检查,而没有提供象PMD和Jalopy那么多的加强代码质量和修改代码的功能。可是,对于团队开发,尤为是强调代码规范的公司来讲,它的功能已经足够强大。

  2.3. CheckStyle的主要运行方式

  目前,CheckStyle的版本是3.0,与之前的版本不一样,它的配置文件是基于XML而非Properties文件。

  它的3.0版本提供了两种运行的方式:

  ·命令行工具

  ·ANT任务

  同时,CheckStyle目前有不少针对流行IDE的插件,例如Eclipse、IntelliJ IDEA、JBuilder等。可是,大部分都是基于2.4的版本,新版本的特性不支持,同时配置也较为复杂。

  由于通常状况下,若是与开发过程与环境集成起来,编码规范的检查会更加有效,所以,做为ANT任务的运行方式使用的更加广泛。

  在ANT的build.xml文件中添加CheckStyle任务的步骤以下:

  1. 将checkstyle-all-3.1.jar拷贝到项目的LIB目录;

  2. 创建配置文件;

  3. 声明CheckStyle任务:

<taskdef resource="checkstyletask.properties" classpath="${lib}/checkstyle-all-3.1.jar"/>

  4. 创建CheckStyle任务:

<target name="checkstyle">
<checkstyle c>
<fileset dir="${src}" includes=" **
 public void setOrganization(OrganizationDTO orgDto) throws Exception;

 
 public OrganizationDTO getOrganization() throws Exception;
......
}

解释:多余的字段。public OrganizationDTO getOrganization() throws Exception;此时public为多余的字段,由于interface定义的时候,就是public的。

须要检查。

4. - Class X should be declared as final.

解释:对于单例设计模式,要求返回惟一的类对象。可是HRFactory和ContextFactory为优化的两个类,不需求检查。
其余的单例类,依然须要进行检查。


5.  Utility classes should not have a public or default constructor.

解释:工具类没必要提供默认的构造方法。
须要检查,仅仅为提示。

6. File does not end with a newline.
解释:虽然JAVA程序不要求结尾要用新行,可是习惯上应该要空一行。
须要检查,仅仅为提示。

7. - Method 'addChildrenId' is not designed for extension - needs to be
  abstract, final or empty.

解释:经过父类继承的,此类有点特殊
能够忽略此类。

8. Variable 'id' must be private and have accessor methods.
解释:BaseHRDTO类,为父类,属性给子类继承,比较特殊。
可是其余的类,声名须要加上范围'private'关键字
须要检查。

9. -Array brackets at illegal position. 解释:代码写法,习惯不同。 须要检查,仅仅提示。

相关文章
相关标签/搜索