编程规约一

Posted yb38156

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了编程规约一相关的知识,希望对你有一定的参考价值。

  大厂比较重视代码规范,尤其是可扩展性和可维护性,以及可读性。如果你是一个刚进公司的开发者,最好先问问前辈是否有

内部的开发规范,花点时间过一遍。即使提交代码没有review的步骤,自己心里应该有个规范。业内比较统一的此处不总结。

  一 、命名风格

  1、抽象类以Abstract或Base开头,异常类以Exception结尾,枚举类以Enum结尾,常量类以Consts结尾,测试类以Test结尾

  2、数组定义中类型与中括号紧挨 int[] arr;

  3、POJO类中布尔类型的变量,都不要加is前缀

  4、包名使用单数形式,类名若有复数含义可用复数形式,如Utils

  5、除非业内公认的缩写,单词不要缩写

  6、若使用了设计模式,以模式名结尾,如OrderFactory,ServiceProxy

  7、接口类的方法和属性不要加任何修饰符号,1.8以前的方法默认都是public abstract 修饰,属性都是public static final的

1.8及以后的加入了static和default修饰符,这两种修饰的方法都需要方法体

  8、接口和实现类:XxxService,XxxServiceImpl,XxxDao,XxxDaoImpl

  9、结构分层的类的方法命名:

    (1)获取单个对象用get做前缀 getObject

    (2)获取多个对象用list做前缀+复数形式结尾 listObjects

    (3)获取统计值用count做前缀

    (4)插入方法用save/insert做前缀

    (5)删除用remove/delete做前缀

    (6)修改用update做前缀

    (7)2种VO:数据表对象xxxDO,网页视图对象xxxVO

  二、常量定义

  1、long型赋值以大写的L结尾,以免数字1与小写字母l混淆

  2、常量类也要分类,不要全部放在一起。比如缓存相关的常量用CacheConsts,系统配置相关的用ConfigConsts,

这些类均放在constant包下,类内部的常量放在本类中使用,不要公开出来放在常量类中

  3、变量值仅在一个固定范围内变化的,用enum类型定义。比如常见的数据库字段值的汉字转义

  三、代码格式

  1、大括号,看示例:(另外左侧大括号与字符留一个空格)   

int a(){};

int a(){
    System.out.println("1");
}
int a(int b){
    if(b==1){
        System.out.println("1"); 
    }else if(b==2){
        System.out.println("2"); 
    }else{
        System.out.println("3"); 
    }  
}        

  2、小括号,左右小括号与字符都不留空格。if/for/while等保留字与括号加一个空格

  3、运算符左右都加一个空格

  4、使用统一的Tab缩进,自行在IDE等开发工具上提前设置

  5、换行:运算符以及点号调用符与下文一起换行,参数换行在逗号后换行。最常见的是append("xxx")方法

  6、IDE统一设置text file encoding为utf-8;换行符使用Unix格式,不要用Windows格式

  7、方法总行数不要过多,一般建议是80行,额外逻辑应提取出来独立一个方法,使主干逻辑清晰

  8、除了逻辑或者业务意义需要加一个空行来隔开,其他的情况不要出现无意义的空行

最后:Intellij类写完了一定要按Ctrl+Alt+O,Ctrl+Alt+L;  Eclipse类写完了一定要按Ctrl+Shift+F,否则你一定要良心过不去

 

以上是关于编程规约一的主要内容,如果未能解决你的问题,请参考以下文章

Java 单体服务开发指南

敏捷项目中代码质量提升实践

阿里巴巴码农这修炼秘籍:SQL语句书写规约

阿里Java开发手冊之编程规约

阿里Java开发手册之编程规约

01_编程规约——OOP规约