## 命名規則
* 目錄名稱統一用 **小寫的英文字母、數字** 的組合,其中不得包含漢字、空格和特殊字符;
* 文件名稱統一用 **小寫的英文字母、數字和下劃線** 的組合,其中不得包含漢字、空格和特殊字符;
* 命名原則的指導思想
* 一是使得你自己和工作組的每一個成員能夠方便的理解每一個文件的意義,
* 二是當我們在文件夾中使用“按名稱排例”的命令時,同一種大類的文件能夠排列在一起,以便我們查找、修改、替換、計算負載量等等操作。
* 圖片的名稱分為頭尾兩部分,用下劃線隔開,頭部分表示此圖片的大類性質
~~~
例如:廣告、標志、菜單、按鈕等等。
* 放置在頁面頂部的廣告、裝飾圖案等長方形的圖片取名: banner
* 標志性的圖片取名為: logo
* 在頁面上位置不固定并且帶有鏈接的小圖片我們取名為 button
* 在頁面上某一個位置連續出現,性質相同的鏈接欄目的圖片我們取名: menu
* 裝飾用的照片我們取名: pic
* 不帶鏈接表示標題的圖片我們取名: title
范例:banner_sohu.gif banner_sina.gif menu_aboutus.gif menu_job.gif title_news.gif logo_police.gif logo_national.gif pic_people.jpg
* 鼠標感應效果圖片命名規范為"圖片名+_+on/off"。
例如:menu1_on.gif menu1_off.gif
~~~
1. 【強制】 代碼中的命名均不能以 *下劃線* 或 *美元符號* 開始,也不能以 *下劃線* 或 *美元符號* 結束。
~~~
反例: _name / __name / $Object / name_ / name$ / Object$
~~~
2. 【強制】 代碼中的命名嚴禁使用拼音與英文混合的方式,更不允許直接使用中文的方式。
說明:正確的英文拼寫和語法可以讓閱讀者易于理解,避免歧義。注意,即使純拼音命名方式也要避免采用。
~~~
反例: DaZhePromotion [打折] / getPingfenByName() [評分] / int 某變量 = 3
正例: alibaba / taobao / youku / hangzhou 等國際通用的名稱,可視同英文。
~~~
3. 【強制】類名使用 UpperCamelCase 風格,必須遵從駝峰形式,但以下情形例外:(領域模型的相關命名)DO / BO / DTO / VO 等。
~~~
正例:MarcoPolo / UserDO / XmlService / TcpUdpDeal / TaPromotion
反例:macroPolo / UserDo / XMLService / TCPUDPDeal / TAPromotion
~~~
4. 【強制】方法名、參數名、成員變量、局部變量都統一使用 lowerCamelCase 風格,必須遵從駝峰形式。
~~~
正例: localValue / getHttpMessage() / inputUserId
~~~
5. 【強制】常量命名全部大寫,單詞間用下劃線隔開,力求語義表達完整清楚,**不要嫌名字長**。
~~~
正例: MAX_STOCK_COUNT
反例: MAX_COUNT
~~~
6. 【強制】抽象類命名使用 Abstract 或 Base 開頭;異常類命名使用 Exception 結尾;測試類命名以它要測試的類的名稱開始,以 Test 結尾。
7. 【強制】中括號是數組類型的一部分,數組定義如下:String[] args;
~~~
反例:請勿使用 String args[]的方式來定義。
~~~
8. 【強制】包名統一使用小寫,點分隔符之間有且僅有一個自然語義的英語單詞。包名統一使用
單數形式,但是類名如果有復數含義,類名可以使用復數形式。
9. 【強制】杜絕完全不規范的縮寫,避免望文不知義。
~~~
反例: AbstractClass“縮寫”命名成 AbsClass;condition“縮寫”命名成 condi,此類
隨意縮寫嚴重降低了代碼的可閱讀性。
~~~
10. 【推薦】如果使用到了設計模式,建議在類名中體現出具體模式。
說明:將設計模式體現在名字中,有利于閱讀者快速理解架構設計思想。
更多命名規則請參考 [每個程序員需掌握的20個代碼命名規則](http://blog.csdn.net/crl2518528/article/details/65446490)