Beta冲刺代码规范
这个作业属于哪个课程 | 班级的链接 |
---|---|
这个作业要求在哪里 | 作业要求的链接 |
这个作业的目标 | Beta冲刺 |
作业正文 | 代码规范 |
其他参考文献 | 阿里巴巴Java开发手册终极版v1.3.0 |
一、代码规范
命名规则
- 严禁使用拼音与英文混合的方式,更不允许直接使用中文的方式。
- 任何自定义编程元素在命名时,使用尽量完整的单词、组合来表达其意。
- 类名使用 UpperCamelCase 风格,必须遵从驼峰形式.
- 若模块、接口、类、方法使用了设计模式,在命名时体现出具体模式。
- 包名统一使用小写,点分隔符之间有且仅有一个自然语义的英语单词。包名统一使用单数形式,但是类名如果有复数含义,类名可以使用复数形式。
- POJO 类中布尔类型的变量,都不要加 is,否则部分框架解析会引起序列化错误。
- 对于 Service和DAO 类,基于SOA的理念,暴露出来的服务一定是接口,内部 的实现类用 Impl 的后缀与接口区别。
例如:CacheServiceImpl 实现 CacheService 接口。
- DAO 层方法命名规约
- 获取单个对象的方法用 get 做前缀
- 获取多个对象的方法用 list 做前缀
- 获取统计值的方法用 count 做前缀
- 插入的方法用 save/insert 做前缀
- 删除的方法用 remove/delete 做前缀
- 修改的方法用 update 做前缀
常量定义
- 常量命名采用全大写的方式,必要时添加注释
- 不允许任何未经定义的常量直接出现在代码
- 不要使用一个常量类维护所有常量,按常量功能进行归类,分开维护。
- long 或者 Long 初始赋值时,使用大写的 L,不能是小写的 l,小写容易跟数字1混淆造成误解
代码格式
- 缩进:采用4个空格缩进,若使用tab缩进,则必须将设置一个tab为4个空格
- 空格规则:
- if/for/while/switch/do 等保留字与括号之间都必须加空格
- 任何二目、三目运算符的左右两边都需要加一个空格
- 没有必要增加若干空格来使某一行的字符与上一行对应位置的字符对齐
- 空行规则:
- 两个方法之间
- 方法内的局部变量和方法的第一条语句之间
- 块注释或单行注释之前
- 一个方法内的两个逻辑段之间
OOP规则
- 避免通过一个类的对象引用访问此类的静态变量或静态方法,直接用类名来访问
- 不能使用过时的类或方法
- 所有的覆写方法,必须加@Override 注解
- 关于基本数据类型与包装数据类型的使用标准如下:
- 所有的 POJO 类属性必须使用包装数据类型。
- RPC 方法的返回值和参数必须使用包装数据类型。
- 所有的局部变量使用基本数据类型。
- 构造方法里面禁止加入任何业务逻辑,如果有初始化逻辑,请放在 init 方法中
- 当一个类有多个构造方法,或者多个同名方法,这些方法应该按顺序放置在一起, 便于阅读
注释规则
- 类、类属性、类方法的注释必须使用/**内容*/格式,不得使用 // xxx 方式
- 方法内部单行注释,在被注释语句上方另起一行,使用//注释。方法内部多行注释 使用/* */注释,注意与代码对齐
- 代码修改的同时,注释也要进行相应的修改,尤其是参数、返回值、异常、核心逻辑 等的修改
- 重要函数头部应该注释,解释函数功能、参数和返回值等;注释的内容应该清楚明了;避免非必要的注释