天天看點

阿裡巴巴 代碼規範

程式設計規約

類名使用 UpperCamelCase 風格.

方法名、參數名、成員變量、局部變量都統一使用 lowerCamelCase 風格,駝峰.

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

長。正例:MAX_STOCK_COUNT / CACHE_EXPIRED_TIME

包名統一使用小寫,點分隔符之間有且僅有一個自然語義的英語單詞。包名統一使

用單數形式,但是類名如果有複數含義,類名可以使用複數形式

在常量與變量的命名時,表示類型的名詞放在詞尾,以提升辨識度。

正例:startTime / workQueue / nameList / TERMINATED_THREAD_COUNT

反例:startedAt / QueueOfWork / listName / COUNT_TERMINATED_THREAD

内部的實作類用Impl

注釋的雙斜線與注釋内容之間有且僅有一個空格。

// 這是示例注釋,請注意在雙斜線之後有一個空格

String param = new String()

單行字元數限制不超過 120 個,超出需要換行,換行時遵循如下原則

單個方法的總行數不超過 80 行。

不同邏輯、不同語義、不同業務的代碼之間插入一個空行分隔開來以提升可讀性

當 switch 括号内的變量類型為 String 并且此變量為外部參數時,必須先進行 null判斷

在高并發場景中,避免使用”等于”判斷作為中斷或退出的條件。

說明:如果并發控制沒有處理好,容易産生等值判斷被“擊穿”的情況,使用大于或小于的區間判斷條件來代替

避免采用取反邏輯運算符。

說明:取反邏輯不利于快速了解,并且取反邏輯寫法必然存在對應的正向邏輯寫法

類、類屬性、類方法的注釋必須使用 Javadoc 規範,使用/**内容*/格式

方法内部單行注釋,在被注釋語句上方另起一行,使用//注釋。方法内部多行注釋使用/* */注釋,注意與代碼對齊

所有的枚舉類型字段必須要有注釋,說明每個資料項的用途。

謹慎注釋掉代碼。在上方詳細說明,而不是簡單地注釋掉。如果無用,則删除。