名词解释
1.POJO(Plain Ordinary Java Object):POJO专指只有setter / getter / toString的简单类,包括DO/DTO/BO/VO等。
2.DO(Data Object):指数据库表一一对应的POJO类。
3.SOA(Service-Oriented Architecture): 面向服务架构。
java开发细节-编程约定(一)
命名:
1.代码中的命名严禁使用拼音与英文混合的方式,更不允许直接使用中文的方式
2.命名应力求表达清晰,避免望文不知意
(1)包名:统一使用小写,点分隔符之间有且仅有一个自然语义的英语单词。也可为复数,如工具包里面又细分很多具体的工具包(如:时间工具、类型转换等)。
(2)类名:类名使用UpperCamelCase风格,必须遵从驼峰形式。
- 抽象类命名使用Abstract或Base开头;
- 异常类命名使用Exception结尾;
- 测试类已Test结尾。
- 对于Service和DAO类,基于SOA的理念,暴露出来的服务一定是接口,内部的实现类用Impl的后缀与接口区别。
- 枚举类名建议带上Enum后缀,枚举成员名称需要全大写,单词间用下划线隔开。
- 将设计模式体类的名字中,有利于阅读者快速理解架构设计思想。(如:OrderFactory)
(3)方法名等:方法名、参数名、成员变量、局部变量都统一使用lowerCamelCase风格,必须遵从驼峰形式。
- 接口类中的方法和属性不要加任何修饰符号(public 也不要加),保持代码的简洁性,并加上有效的Javadoc注释。
- 常量命名全部大写,单词间用下划线隔开。
- 获取单个对象的方法用get做前缀。
- 获取多个对象的方法用list做前缀。
- 获取统计值的方法用count做前缀。
- 插入的方法用save(推荐)或insert做前缀。
- 删除的方法用remove(推荐)或delete做前缀。
- 修改的方法用update做前缀。
- 数据对象:xxxDO,xxx即为数据表名。直接存储数据库中。
- 展示对象:xxxVO,xxx一般为网页名称。经过数据库中多张表进行整理,业务处理后的对象,用于页面展示。
代码格式
- 左小括号和字符之间不出现空格;同样,右小括号和字符之间也不出现空格 反例:if (空格a == b空格)
- 缩进采用4个空格,或者一个Tab键(必须设置 1个 Tab 为 4个空格)。
- 单行字符数限不超过 120 个,超出需要换行。一个方法体不超过150行代码。
- 方法参数在定义和传入时,多个参数逗号后边必须加空格。(如:method(“a”, “b”, “c”);)
- 方法体内的执行语句组、变量的定义语句组、不同的业务逻辑之间或者不同的语义之间插入一个空行。例如一个方法体中包含多个方法的调用,当多个方法属于不同的业务关系时,需使用 一个空格 进行隔开,并加上相应的注释。
- 任何二目、三目运算符的左右两边都需要加一个空格。
//示例代码
// if/for/while/switch/do等保留字与括号之间都必须加空格
public static void main(String[] args) {
// 缩进4个空格
String say = "hello";
// 运算符的左右必须有一个空格
int flag = 0;
// 关键词if与括号之间必须有一个空格,括号内的f与左括号,0与右括号不需要空格
if (flag == 0) {
System.out.println(say);
//插入数据
insertData();
//插入和删除属于不同的业务,需用一个空行隔开。并加上相应的注释
//删除数据
deleteData();
}
// 左大括号前加空格且不换行;左大括号后换行
if (flag == 1) {
System.out.println("world");
// 右大括号前换行,右大括号后有else,不用换行
} else {
System.out.println("ok");
// 在右大括号后直接结束,则必须换行
}
}
整理与《java开发手册》。