编码规范对我们程序员来说,是非常重要的,做好代码规范,我们能避免很多问题,节约很多时间,减少浪费。
有一份统一的规范,可以方便程序员阅读,维护代码,提到代码质量;还可以使得代码度量更加精确,为后续的交接工作提供了方便。
命名规范
- 名字应该是是英文,并且和业务挂钩
- 应由单词组成,最多不超过四个, 字母控制在3到30内。
- 使用驼峰命名法,除首字母外,其他单词的首字母大写,其他字母小写。类名每个组合的单词都要大写
- 方法命名,增删改查,使用add/delete/update/find或者query等关键字。
- 不能使用java关键字
- 属性命名使用名词,禁止缩写,boolean避免使用is开头。
- 常亮:尽量使用完整的英文大写字母,在词之间用下划线链接。如:DEFAULT_VALUE。
- 字段和变量不能使用public修饰,使用驼峰命名,不能出现没有意思的变量。
- 静态字段使用大驼峰命名。
- 集合使用名词加集合名词的方式命名,使用小驼峰。如:
List<User> userList = new ArrayList<>(); Map<String, User> userMap = new HashMap<>();
注释规范
- 源程序的有效注释量应该在30%以上。
- 注释信息不仅包括功能,还要给出原因。
- 除了了变量定义可以使用行尾注释,其他注释应当避免使用行尾注释。
- 没有实现的代码用//TODO:声明
- 存在错误隐患的代码用//FIXME:声明
注释类型:
- 单行注释:“//……”
- 块注释:“/*……*/”
- 文档注释:“/**……*/”
- 方法注释:方法注释+姓名+时间+java开发版本
- 字段/属性注释:例:private String senderName;//发送人姓名
- Javadoc注释标签语法:
@author 对类的说明 标明开发该类模块的作者
@version 对类的说明 标明该类模块的版本
@see 对类、属性、方法的说明 参考转向,也就是相关主题
@param 对方法的说明 对方法中某参数的说明
@return 对方法的说明 对方法返回值的说明
@exception 对方法的说明 对方法可能抛出的异常进行说明
格式规约
- 使用集成开发工具,我们不用刻意去敲空格,或者对齐,使用格式化工具即可。eclipse快捷键:CTRL+Shift+F。idea快捷键:CTRL+Alt+L
- 一行只能声明一个变量
- 头注释与import和package之间有空行,方法之间也有空行分割。
- 空格规则:
情形
示例
在大多数运算符之前和之后
if (a + b > c)
"(" 的前面
例如:if ((a>b) && (c>d)) 不要写成 if((a>b)&&(c>d))
例外:表示函数调用的括号不用加空格。如:getData(param1);
|, &, ||, && 前后
if (a>b && c>d)
"=" 前后
a = 100;
三元操作符 ? : 的前后
maxValue = a>b ? a : b;
函数调用的各个参数之间
getData(param1, param2, param3);
比较符前后
a > b //不强制
case 的后面
case "none"
语句表达式之间
for (expr1; expr2; expr3)
大括号要对齐
- 当方法参数过多时当在每个参数后(逗号后)换行并对齐。
- 当控制或循环中的条件比较长时当换行(操作符前)、对齐并注释各条件。
- 变量定义最好通过添加空格形成对齐,同一类型的变量应放在一起
小括号规则
- 不要把小括号和关键词(if 、while等)紧贴在一起,要用空格隔开它们。
- 不要把小括号和函数名紧贴在一起。
- 除非必要,不要在Return返回语句中使用小括号。因为关键字不是函数,如果小括号紧贴着函数名和关键字,二者很容易被看成是一体的。尽量不要在返回语句中使用()。