编码规范与后端注意事项

关于java编码规范需要注意的内容

阿里编码规范学习

类名以及常量编码命名规则:
1.不允许中文,不能使用拼音缩写(会导致看不懂),不能将英文和中文拼音混合内容
2.代码中的命名均不能以下划线或美元符号开始,也不能以下划线或美元符号结束。
3.类的命名需要采用大驼峰,除外以下情形:DO / BO / DTO / VO / AO / PO 等。
4.方法名、参数名、成员变量、局部变量都统一使用小驼峰
5.常量命名字母全部需要大写,每个单词间用下划线隔开。
6.包名使用小写,包名使用单数形式,但是类名如果有复数含义,类名可以使用复数形式。
7.类型与中括号紧挨相连来定义数组。例:int[] arrayDemo。
8.抽象类命名使用Abstract或Base开头;异常类命名使用Exception结尾;测试类命名以它要测试的类名开始,以Test结尾。

代码格式

1.大括号的使用条例:
如果是大括号内为空,则简洁地写成{}即可,不需要换行;如果是非空代码块需要满足以下规则:
(1)左大括号前不换行。
(2)左大括号后换行。
(3)右大括号前换行。
(4)右大括号后还有else等代码则不换行;表示终止的右大括号后必须换行。
2.方法参数在定义和传入时,多个参数逗号后边必须加空格。
例:下例中实参的"a",后边必须要有一个空格。
method(“a”, “b”, “c”);
3.IDE的text file encoding设置为UTF-8; IDE中文件的换行符使用Unix格式,不要使用Windows格式。
4.不同逻辑、不同语义、不同业务的代码之间插入一个空行分隔开来以提升可读性。
5.采用4个空格,禁止使用tab
6.注释的双斜线和内容要有空格
7.强制类型转换时,右括号与强制转换值之间不用空格
8.单行字符不超过120个,超过要换行
9.方法在定义和传参时,必须要加空格

面向对象(OOP)规范

1.不用一个类型的对象引用来访问静态方法和静态属性,直接类名访问即可
2.所有覆写方法,必须加@Override注解
3.相同业务含义,相同参数类型才能使用java可变参数
4.外部依赖或者二方库依赖的接口,不能修改方法签名。接口过时必须用@Deprecated 注解,并说明新接口或者新服务是什么
5…不能使用过时的类或者方法
6. Object的equals方法容易抛出空指针,应使用常量或者确定值的对象来调用equals
7.所有整型包装类之间的值比较都用equals 方法比较
8.浮点数之间的等值判断,基本类型不能用==,包装类不能用equals。
解决方案:(1) 指定一个误差范围,两个浮点数的差值在此范围之内,则认为是相等的。
(2) 使用BigDecimal来定义值,再进行浮点数的运算操作。
9.定义DO类时,属性类型要数据库字段类型相匹配
10.防止精度丢失,禁止使用BigDecimal(double)方式将double对象转换成BigDecimal。建议使用BigDecimal的valueOf方法
11.基本类型和包装类型的使用标准
(1.所有POJO的属性必须用包装类型
(2.RPC方法的参数和返回值必须使用包装类型
(3.所有局部变量使用基本变量
12.所有POJO 不要对其属性设置默认值
13.序列化类新增时不要修改其serialVersionUID字段
14.构造方法里禁止加任何业务处理逻辑,有要加在init()
15.POJO类必须要写toString方法
16.禁止在POJO类中对属性xxx 同时存在isXxx()和getXxx()
17.使用索引访问用String的split方法得到数组时,需要对最后一个分隔符有无内容做检查
18.一个类有多个构造方法或者多个同名方法,要按照顺序来。
19.类中的方法顺序 :共有方法-> 私有方法 -> get/set
20.setter方法中参数名称和成员变量名称一致,不要在getter和setter方法中加业务逻辑
21.循环体内用StringBuilder的append方法进行扩展
22.final可以修饰类,方法,变量。
23.慎用Object的clone方法

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值