身为一位程序员而且是多年工作的程序员,自身开发编程必须有一套专业的规范,可惜小子不才编写不出😄,在此分享下阿里出品的开发规范,本人里面的大部分平时也没注意过,受益匪浅,少举几例让大家尝尝吧

命名风格

1
2
1.强制】代码中的命名均不能以下划线或美元符号开始,也不能以下划线或美元符号结束。 
反例:_name / __name / $Object / name_ / name$ / Object$
1
2
1.强制】代码中的命名均不能以下划线或美元符号开始,也不能以下划线或美元符号结束。 
反例:_name / __name / $Object / name_ / name$ / Object$
1
2
2.【强制】代码中的命名严禁使用拼音与英文混合的方式,更不允许直接使用中文的方式。说明:正确的英文拼写和语法可以让阅读者易于理解,避免歧义。注意,即使纯拼音命名方式也要避免采用。正例:alibaba / taobao / youku / hangzhou 等国际通用的名称,可视同英文。 
反例:DaZhePromotion [打折] / getPingfenByName() [评分] / int 某变量 = 3
1
2
3
3.【强制】类名使用UpperCamelCase风格,必须遵从驼峰形式,但以下情形例外:DO / BO / 
DTO / VO / AO
正例:MarcoPolo / UserDO / XmlService / TcpUdpDeal / TaPromotion 反例:macroPolo / UserDo / XMLService / TCPUDPDeal / TAPromotion
1
2
4.【强制】方法名、参数名、成员变量、局部变量都统一使用lowerCamelCase风格,必须遵从驼峰形式。 
正例: localValue / getHttpMessage() / inputUserId
1
2
5.【强制】常量命名全部大写,单词间用下划线隔开,力求语义表达完整清楚,不要嫌名字长。 
正例:MAX_STOCK_COUNT 反例:MAX_COUNT

常量定义

1
2
1.【强制】不允许任何魔法值(即未经定义的常量)直接出现在代码中。 
反例:String key = "Id#taobao_" + tradeId; cache.put(key, value);
1
2
2.【强制】long或者Long初始赋值时,使用大写的L,不能是小写的l,小写容易跟数字1混淆,造成误解。 
说明:Long a = 2l; 写的是数字的21,还是Long型的2?
1
2
3
3.【推荐】不要使用一个常量类维护所有常量,按常量功能进行归类,分开维护。 
说明:大而全的常量类,非得使用查找功能才能定位到修改的常量,不利于理解和维护。
正例:缓存相关常量放在类CacheConsts下;系统配置相关常量放在类ConfigConsts下。
1
4.【推荐】常量的复用层次有五层:跨应用共享常量、应用内共享常量、子工程内共享常量、包内共享常量、类内共享常量。 

代码格式

1
2
3
4
1.【强制】大括号的使用约定。如果是大括号内为空,则简洁地写成{}即可,不需要换行;如果是非空代码块则:  1) 左大括号前不换行。 
2)左大括号后换行。
3)右大括号前换行。
右大括号后还有else等代码则不换行;表示终止的右大括号后必须换行。
1
2
3
2.【强制】 左小括号和字符之间不出现空格;同样,右小括号和字符之间也不出现空格。详见第5条下方正例提示。  
空格 a == b 空格
反例:if ()
1
【强制】if/for/while/switch/do等保留字与括号之间都必须加空格。
1
2
4.【强制】任何二目、三目运算符的左右两边都需要加一个空格。 
说明:运算符包括赋值运算符=、逻辑运算符&&、加减乘除符号等。

当然内容不止这些,更多大家还是下载下来慢慢研读吧

下载地址