提高开发效率,提升代码质量:CheckStyle的实战应用
提高开发效率,提升代码质量:CheckStyle的实战应用
dong4j根据 「阿里巴巴开发规范」 配置 IDEA 开发环境
google-code-checks-xxx.xml
根据 google-code-checks.xml 修改
按照官方文档加上中文注释
具体的 checkstyle 规则可以查看 google-code-checks.xml
命名规约
通过 checkstyle 控制, 所有不符合要求的 包名, 类名, 方法名, 局部变量, 静态变量, 常量 都会提示
接口类中的方法和属性不要加任何修饰符号(public 也不要加),保持代码的简洁 性,并加上有效的 Javadoc 注释
idea 对于多余的修饰符也会标记, 这里使用 checkstyle 提示
常量定义
- 重复的字符串出现 2 次以上, 就会提示, 应该使用常量字符串代替
- 当定义一个常量时, 希望使用大写的 L 来代替小写的 l, 原因是小写的 l 和数字 1 很象
- long 或者 Long 初始赋值时,必须使用大写的 L,不能是小写的 l,小写容易跟数字 1 混淆,造成误解
格式规约
全部使用 checkstyle 约束
如果违反规则, 则会给出提示, 按照相应提示修改即可, 修改之前先全部格式化, 会减少很多提示
缩进采用 4 个空格,禁止使用 tab 字符
单行字符数限制不超过
单行字符数限制不超过 120 个,超出需要换行,换行时
遵循如下原则:- 第二行相对第一行缩进 4 个空格
- 运算符与下文一起换行。
- 方法调用的点符号与下文一起换行。
- 在多个参数超长,逗号后进行换行。
- 在括号前不要换行
格式化文件和 checkstyle 都已经设置为 120 个字符长度, 如果超长, 使用快捷键格式化, 然后按照上面的 5 点原则修改即可
IDE 的 text file encoding 设置为 UTF-8; IDE 中文件的换行符使用 Unix 格式,不要使用 windows 格式。
Object 的 equals 方法容易抛空指针异常,应使用常量或确定有值的对象来调用 equals。
不使用 System.out[err].print[ln]
改为
注释规约
规范 todo 和 fixme 标记
todo 和 fixme 后 跟 - 名字 谁标记谁处理
1
2fixme-dong4j : ($date$ $time$ [ 说明] [预计处理时间])
todo-dong4j : ($date$ $time$ [ 说明] [预计处理时间])类, 方法, 字段注释要求
创建类时, 使用模板自动生成类注释
方法注释使用 javadoc[插件] 自动生成
字段注释使用/ ** 注释内容 */
的方式, 当使用 F1 查看字段时, 即可看见注释说明, 不需要跳转到对应的类查看1
2
3
4
5
6
7
8
9
10
11
12/**
* <p>Title: $packagename$</p>
* <p>Company: xxx 公司 </p>
* <p>Copyright © 2014 x'x'x All Rights Reserved</p>
* <p>Description: $END$</p>
* author: dong4j
* emali: dong4j@gmail.com
* version: 1.0
* date: $date$ $time$
* updatetime:
* reason:
*/
checkstyle 使用方法
- 安装 CheckStyle-IDEA 插件
- 导入 google-code-checks-xxx.xml
- 然后导入 google-code-style.xml
- 最后关联 2 个文件
checkstyle 插件的使用
安装好插件后, 第一次打开项目, 就会扫面全部文件的代码, 会时时提示规则
手动检查当前文件 右键 –> check current file
手动扫描 module
手动扫面 project
警告提示
这个不晓得是不是 bug, 暂时还没有找到解决办法, 所以暂时忽略
checkstyle 取消勾选即可