您的位置:首页 > 其它

Checkstyle手册

2014-02-28 23:01 309 查看
    开发,尤其是团队开发时,经常面临这样的问题:

“你的函数命名怎么不符合规范”
“你的第三个参数怎么没有注释”
“你一个函数写了3000行,这怎么能行?”

    以上都不会影响代码的运行,但是却给程序布下了不便或者隐患。所以开发前,团队总会制定规范文档,但是文档只具有借鉴的作用,不具有约束力,靠的是大家的自律;如果靠人工检查,耗时耗力——你需要Checkstyle。

   前段时间为了保证团队开发的在风格上的一致性,比如:函数命名、代码长度 、文件长度、注释规范等,写了一个关于Checkstyle基础文档,供大家参考学习《Checkstyle_下载_配置_使用手册》

简介

    Checkstyle是检查Java程序源代码样式的插件,帮助我们检查代码,以更好的符合标准,特别适用于小组开发时彼此间的样式规范和统一。Checkstyle提供了灵活的配置性,所以除了使用它提供的几种常见标准之外,你也可以定制自己的标准。

    总的来说,Checkstyle就是帮助我们检测源码规范并给出修改建议的一个工具。

安装

    以Eclipse Juno为例。

    在线安装

    代理

    为保证在线安装的速度,需要使用代理,代理成功成功后,需要配置Eclipse的网络连接,依次打开

Window—Preferences—Generral—Network Connection.

    1. Active Provider,选择为Manual

    2. 编辑Proxy entries下的HTTP和HTTPS的Host为127.0.0.1,Port为:8087

    3. 保存

    安装

    依次打开Help—Eclipse Marketplace,输入Checkstyle,选择第一个点击install,一直点击Next……Finish即可,中间提醒是否继续,点击Ok。

    下载安装

    1. 进入网址:http://sourceforge.net/projects/eclipse-cs/files/updatesite/,出现版本列表:

    2. 以5.7.0为例,进入5.7.0,分别下载plugins和featrues下的文件

    3. 并对应放到Eclipse安装目录下的plugins和featrues中,即可安装成功。

    依次进入Window—Preferences,如果出现CheckStyle则表示安装成功。

使用

    在需要使用Checkstyle的项目上,右键-Properties—CheckStyle,然后配置:
勾选Checkstyle active for this project
选择制定的模板文件
    然后打开使用Checkstyle的项目文件,如ICollegeBean.java即可看到Checkstyle的效果,每个小放大镜都会提示问题位置及原因:

    


自定义配置

    配置样板

<?xml version="1.0"?>
<!DOCTYPE module PUBLIC
"-//Puppy Crawl//DTD Check Configuration 1.2//EN"
"http://www.puppycrawl.com/dtds/configuration_1_2.dtd">
<module name="Checker">
<!--提示信息的严重性-->
<property name="severity" value="warning"/>
<!-- Checks that a package.html file exists for each package.     -->
<!-- See http://checkstyle.sf.net/config_javadoc.html#PackageHtml -->
<module name="JavadocPackage"/>
<!-- 忽略检测文件末尾是否有新行                        -->
<!-- See http://checkstyle.sf.net/config_misc.html#NewlineAtEndOfFile -->
<module name="NewlineAtEndOfFile">
<property name="severity" value="ignore"/>
</module>
<!-- 检测两个资源文件是否具有相同的key         -->
<!-- See http://checkstyle.sf.net/config_misc.html#Translation -->
<module name="Translation"/>
<!--……………………其它配置…………-->
</module>
    在它内部,将每个需要检测的单元以module的方式封装起来,需要检查哪些检测,将该module放入配置文件,并指定值即可。

    常见检测

    一般我们都需检测什么:

    1.tab宽度:每个tab代表4个单位宽度

    2.注释:检测注释的名称和个数是否和参数匹配

    3.命名规范:检测函数和参数名是否符合Sun规范

    4.import:检测import引用项是否符合规范

    5.代码行长度:定义为最长120个宽度

    6.函数长度:函数最长代码行为150行

    7.参数个数:函数参数个数最多为7个

    8.空格:检测不必要的空格

    9.嵌套:检测嵌套情况

    10.文件长度:文件最长为2000行

    11.资源文件:检测相同名称的资源文件是否有相同的key

    12.编码规范:检测常见编码规范,如空行、静态变量使用、非法对象实例化

总结

    凡是与人工代码无关的内容,请交给计算机。更多详见《Checkstyle_下载_配置_使用手册》
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: