1. 程式人生 > >【規範】alibaba編碼規範閱讀

【規範】alibaba編碼規範閱讀

服務 rpc 方法 als 如果 基本類 except 基本類型 編碼

一、編程規範

(一)命名規範

1、代碼中的命名均不能以下劃線或美元符號開始,也不能以下劃線或美元符號結束

2、代碼中的命名嚴禁使用評語與英文混合的方式,更不允許直接使用中文的方式

3、類名使用UpperCamelCase風格,必須遵從駝峰形式,但是:DO BO DTO VO AO除外

4、方法名、參數名、成員變量、局部變量都統一使用lowerCamelCase風格,必須遵從駝峰格式

5、常量名全部大寫,單詞間用下劃線隔開,力求詞義表達清楚,不要嫌名字長

6、抽象類命名使用Abstract或Base開頭:異常類命名使用Exception結尾:測試類命名以它要測試的類的名稱開始,以Test結尾。

7、中括號是數組類型的一部分,使用String[] args 不要使用String args[]的方式

8、POJO類中布爾類型的變量,都不要加is,否則部分框架解析會引起序列化錯誤。

定義基本類型Boolean isDeleted的屬性,它的方法也是isDeleted(),RPC框架在反向解析的時候,以為對應的屬性名稱是deleted,導致屬性獲取不到,進而拋出異常。

9、包名統一使用小寫,點分隔符有且僅有一個自然語義的英文單詞,包名統一使用單數形式。但是類名如果有復數含義,類名可以使用復數形式。

10、杜絕完全不規範的縮寫,避免望文生義。

11、為了達到代碼自解釋的目標,任何自定義編程元素在命名時,使用盡量完整的單詞組合來表達詞義 eg:PullCodeFromRemoteRepository

12、如果模塊、接口、類、方法使用了設計模式,在命名時體現出具體模式eg:public class OrderFactory ; public calss LoginProxy ; public class ResourceObserver

13、接口類中的方法和屬性不要加任何修飾符號,保持代碼的簡潔性,並加上有效的javadoc註釋。盡量不要在接口中定義變量,如果一定要定義變量,肯定是與接口方法相關,並且是整個應用的基礎常量。

14、接口和實現類的命名有兩套規則

①、對於Service和DAO類,基於SOA的理念,暴露出來的服務一定是接口,內部的實現類是用Impl的後綴和接口區別

②、如果是形容能力的接口名稱,取對應的額形容詞做接口名(通常是-able的形式)

15、枚舉類名建議加上Enum後綴,枚舉成員名稱需要大寫

【規範】alibaba編碼規範閱讀