浅析 阿里巴巴 Java 开发规约
(未完成)
contents
- 编程规约
编程规约
- 命名规约
- OOP规约
命名规约
- 采用空格缩进,禁止使用tab字符。
这是Google和ali一致的规约,只不过前者是一个tab对应2个空格,后者则是4个空格。之所以不提倡tab键,是因为不同的IDE对tab键的“翻译”默认有所差异,容易因不同程序员的个性化而导致同一份代码的格式混乱。。
- POJO类中布尔类型的变量,都不要加is,否则部分框架解析会引起序列化错误。
定义为基本数据类型boolean isSuccess;的属性,它的方法也是isSuccess(),RPC框架在反向解析的时候,“以为”对应的属性名称是success,导致属性获取不到,进而抛出
异常。 - 包名统一使用小写,点分隔符之间有且仅有一个自然语义的英语单词。包名统一使用单数形式,类名若有复数含义,则可使用复数形式。
避免硬编码问题是每个程序员都应该具备的基本素养,硬编码所带来的可读性差、维护困难等问题。
- 接口类中的方法和属性不要加任何修饰符号(public 也不要加),保持代码的简洁性
正例:接口方法签名:void f();
反例:接口方法定义:public abstract void f(); - Service/DAO层方法命名规约
1)获取单个对象的方法用get做前缀。
2)获取多个对象的方法用list做前缀。
3)获取统计值的方法用count做前缀。
4)插入的方法用save(推荐)或insert做前缀。
5)删除的方法用remove(推荐)或delete做前缀。
6)修改的方法用update做前缀。
OOP规约
- 构造方法里面禁止加入任何业务逻辑,如果有初始化逻辑,请放在init方法中。
- POJO类必须写toString方法。使用工具类source> generate toString时,如果继承了另一个POJO类,注意在前面加一下super.toString。
- 类内方法定义顺序依次是:公有方法或保护方法> 私有方法> getter/setter方法。
说明:
公有方法是类的调用者和维护者最关心的方法,首屏展示最好;
保护方法虽然只是子类关心,也可能是“模板设计模式”下的核心方法;
而私有方法外部一般不需要特别关心,是一
个黑盒实现;
因为方法信息价值较低,所有Service和DAO的getter/setter方法放在类体最
后。
原文地址:https://www.cnblogs.com/selton/p/9028889.html
时间: 2024-10-21 10:41:42