-
总体规则
- 使用VS编码时多按照VS的默认编码规范
-
程序的版式:
- 缩进使用TAB键
- 相对独立的程序块之间必须加空行
- 较长语句会回车后写在下一行
- 不允许把多个语句写在同一行(不论长短)
- if、for、do、while、case、switch、default default default 等语句自占一行 等语句自占一行,且 if、for、 do、while 等语句的执行语句部分无论多少都要加括号 等语句的执行语句部分无论多少都要加括号{}
- 程序块的分界符应该独占一行
-
标识符命名:
- 尽量使用英文单词
- 常量、宏和模板名全用大写,每个单词用’_‘表示
- 函数名以大写字母开头
-
变量、结构:
- 尽量少使用全局变量,尽量去掉没必要的公共变量 ,尽量去掉没必要的公共变量
-
函数、过程:
- 一个函数一个功能
- 函数限制在100行
- 检查函数参数的有效性
- 函数的返回值要明确 来源:《码出高效_阿里巴巴Java开发手册》
缩进
一、当一个表达式无法容纳在一行内时,可以依据如下一般规则断开之:
1、在一个逗号后面断开;
2、在一个操作符前面断开;
3、宁可选择较高级别(higher-level)的断开,而非较低级别(lower-level)的断开;
4、新的一行应该与上一行同一级别表达式的开头处对齐。
二、if语句的换行使用8个空格的规则,因为常规缩进(4个空格)会使语句体看起来比较费劲。
三、4个空格(即一个制表符)作为缩进排版的一个单位。
变量命名
1、所有变量名见名知意
2、类成员变量:首字母小写和驼峰原则,如:moneySave,除了第一个单词以外,其他单词首字母大写
3、局部变量:首字母小写和驼峰原则
每行最多字符数
每行代码不超过80个字符的限制。
函数最大行数
函数的最大行数取20-30行之间。
函数、类命名
1、类的命名:类名是以大写字母开头的名词。如果有多个单词组成,每个单词第一个字母应该大写(骆驼命名法)。不能使用Java保留字作为类名。
2、函数的命名:方法的名字的第一个单词应以小写字母作为开头,后面的单词则用大写字母开头。
常量
1、 不允许未经定义的常量直接出现在代码中。
2、long 或者 Long 初始赋值时,使用大写的 L,不使用小写的l,小写容易跟数字1混淆,造成误解。
3、不要使用一个常量类维护所有常量,按常量功能进行归类,分开维护。
4、如果变量值仅在一个范围内变化用 Enum类。如果还带有名称之外的延伸属性,必须
使用 Enum类,
空行规则
空行将逻辑相关的代码段分隔开,以提高可读性。
下列情况应该总是使用两个空行:
1、 一个源文件的两个片段(section)之间
2、类声明和接口声明之间
下列情况应该总是使用一个空行:
1、两个方法之间
2、方法内的局部变量和方法的第一条语句之间
3、块注释或单行注释之前
4、一个方法内的两个逻辑段之间,用以提高可读性
注释规则
1.注释应该使代码更加清晰易懂
2.注释要简洁明了,只要提供能够明确理解程序必要的信息就可以了。
3.注释不仅描述程序作了什么,还要描述为什么这样做以及约束。
4.对于一般的getter和setter方法不用注释。
5.类、接口、构造函数、方法、全局变量必须添加注释。字段属性可以选择添加简单注释。
6.简单注释一般不超过10个字。
7.特殊地方必须要添加注释。比如:典型算法,代码不明晰处,在代码修改处,在循环和逻辑分支组成代码处,为他人提供的接口。
操作符前后空格
1、 =前后有空格
2、 + - * / 等二元运算前后有空格
3、++等一元操作符前后和中间没有空格
4、&& || ! 等逻辑运算符前后没有空格
其他规则
1、 if、for、while、switch等与后面的括号间应加空格,使if等关键字更为突出、明显。
2、if, for, do, while, case, switch, default 等语句自占一行,if, for, do, while等语句的执行语句只有一句的时候不加括号,其他情况都加括号。