java編碼規范v1.0參考模板_第1頁
java編碼規范v1.0參考模板_第2頁
java編碼規范v1.0參考模板_第3頁
java編碼規范v1.0參考模板_第4頁
java編碼規范v1.0參考模板_第5頁
已閱讀5頁,還剩22頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、JAVA編碼規范1 / 27目 錄JAVA編碼規范11 概述71.1 范圍71.2 說明72 文件體系結構82.1 文件體系規則8規則2.1.1 JSP文件目錄結構8建議2.1.2 Java文件目錄結構82.2 源文件結構規則9規則2.2.3 類變量的聲明順序是public,protected,package,private9規則2.2.4 變量、常量的注釋應放在其上方相鄰位置9規則2.2.5 用遞增的方式寫構造器(比如:參數多的寫在后面)9規則2.2.6 類變量的存取方法:get和set方法9規則2.2.7 如果定義main() 方法,必須將main方法寫在類的底部93 文件命名規則10規則

2、3.1 Structs配置文件命名10規則3.2 JSP文件命名10規則3.3 Java文件命名104 排版規則114.1 語句排版規則11規則4.2.1簡單語句每行至多包含一條語句11規則4.2.2 復合語句被括其中的語句縮進一個層次11規則4.2.3 左大括號""應位于復合語句起始行的行尾,前面需加一個空格符;右大括號""應另起一行并與復合語句首行對齊。11規則4.2.4 必須用""和""將if內的語句括起來。(即使只有一條語句的情況下)11規則4.2.7 在多層嵌套的for語句中,應在for上一行增加邏輯注釋

3、12建議4.2.14 “=”等比較符前后加一個空格125 注釋規則135.1 類注釋規則13規則5.1.1 使用JavaDoc,列出功能、版本信息、日期、作者和版權聲明13規則5.1.2 如果對文件進行了修改,必須說明修改目的、修改日期、修改人,并變更版本信息135.2 類方法注釋規則14規則5.2.1 用中文寫出每個參數和返回值的含義14規則5.2.2 當修改其他組員創建的類時,增加author標簽145.3 單行注釋規則14規則5.4.1單行注釋位于所描述內容之前14規則5.4.2 單行注釋之前留一行空行145.3.1 接口145.3.2 局部變量145.3.3 方法155.3.4 方法內

4、部注釋156 命名規則166.1 包命名規則16規則6.1.1包的名字全部小寫166.2 類命名規則17規則6.2.1類名用英文名稱,不用漢語拼音。例如Customer,而不是KH17規則6.2.2類名是名詞,采用大小寫混合的方式,每個單詞的首字母大寫17規則6.2.3類名不要用復數17規則6.2.4類名不要以“A”,“An”或“The”開頭17規則6.2.5如果不能選擇適當的類名,而該類與數據庫一個表緊密相關,再把數據庫表名作為類名17規則6.2.6使用完整單詞,避免縮寫詞(除非該縮寫詞被更廣泛使用,像URL,HTML)17規則6.2.7 命名方式采用匈牙利式176.3 接口命名規則17規則

5、6.3.1接口的規則與類相同17規則6.3.2接口名前面加“I”186.4 方法命名規則18規則6.4.1方法名是動詞名詞對,采用大小寫混合的方式,第一個單詞的首字母小寫,其后單詞的首字母大寫18建議6.4.2方法名應準確描述方法的功能,不要使用無意義或含義不清的動詞為方法命名186.5 變量命名規則18規則6.5.1 變量名采用大小寫混合的方式,第一個單詞的首字母小寫,其后單詞的首字母大寫18規則6.5.2 除一次性的臨時變量(如for循環變量)以外,不能用單個字符的變量名18規則6.5.3 如果變量名代表容器(collection),如Array, Vector等,在變量名后加“List”

6、19建議6.5.4 變量名要簡短且富于描述,能夠指出其用途19建議6.5.5 臨時變量通常被取名為i,j,k,m和n,它們一般用于整型;c,d,e,它們一般用于字符型196.6 常量命名規則19規則6.6.1 類常量全部用大寫字母,單詞間用下劃線隔開196.7 方法的參數命名規則19規則6.7.1使用全英文命名。首字母小寫,后續單詞首字母大寫196.8 數組命名規則19規則6.8.1將 放在類型后196.9 Boolean getter 方法命名規則20規則6.9.1所有布爾型get方法必須用單詞”is”作為前綴。”is”為小寫,后續單詞首字母大寫,其余字母小寫206.10 構造方法命名規則2

7、0規則6.12.1 構造方法使用類名207 程序日志打印21規則7.1后臺不允許出現sysout控制臺打印日志;21規則7.2日志打印類統一采用“mons.logging.Log”,不允許使用其它jar包提供的類似方式;21規則7.3日志級別INFO、ERROR;21規則7.4異常信息的日志打印;21規則8.8 引用SPRING配置的bean統一采用注解方式按類型注入218 方法22規則9.1 用注釋詳細說明每個參數的作用、取值范圍及參數間的關系229 程序效率23規則11.1 不要在循環內執行重復操作23規則11.2 在對字符串有附加操作時,使用StringBuffer而非String。使用

8、StringBuffer性能會好很多23建議11.3 顯式地把已經不再被引用的對象賦為null23建議11.4 不要頻繁初始化對象2310 質量保證2510.1 質量保證規則25規則12.1 打開的數據庫連接、文件在使用后必須關閉25建議12.2 合理設計程序,避免占用太大內存2510.2 安全規則25規則12.3不要使用不推薦的API25規則12.5在程序中出現連續get值時,需判斷是否為空,杜絕空指針2511 WEB編碼規范2611.1 html、css、js、images、jsp均須按照約定目錄存放;26JavaScript書寫規范2611.2 注釋規范26附錄A 詞典規范27A.1 動

9、詞詞典27A.2 名詞詞典28 1 概述制定編碼規范的最主要的目的是為了對產出代碼的長期維護。通常負責維護代碼的人大多都不是開發者本人,如果有一個統一的代碼格式以及說明就可以減少混淆提高理解速度。因此,下列的編碼規范是基于良好的編碼習慣和可讀性的原則來制定的。特別說明:不反對不提倡拷貝粘貼,但拷貝的每行代碼務必清楚意思和原因!1.1 范圍本文檔僅僅是編碼規范,它定義了所有代碼編寫者在編寫Java代碼時應遵守的一些規則和習慣。同時,還提供一些有關編寫Enterprise JavaBean代碼的命名規則和習慣。本規范采用以下術語描述: 規則:編程時強制必須遵守的原則。建議:編程時需考慮的事項。 說

10、明:對此規則或建議進行必要的解釋。 示例:對此規則或建議從正、反兩個方面給出例子。1.2 說明本文檔中標注規則的地方為強制要求。鼓勵對當次需求變更涉及代碼進行重構,簡單原則:發現重復抽取不同點封裝共同點并將不同點傳參遞歸。特別注意:在沒有充分測試保證的前提下,避免主動對涉及其它重要業務功能的代碼進行重構。2 文件體系結構2.1 文件體系規則規則2.1.1 WebRoot文件目錄結構|images 存放圖片|resources |css 存放樣式表|js 存放javascript腳本|模塊分類名 |WEB-INF 存放頁面和配置文件|config 存放log4j文件、jdbc文件|jsp 存放j

11、sp頁面|模塊分類名注:jsp頁面引用的js名稱必須相同,基于js和jsp文件夾下的路徑必須相同規則2.1.2 Java文件目錄結構com.56sino|base存放基礎類|controller存放接口控制類|dao存放數據接口類|impl存放數據接口實現類|filter存放過濾類|listener存放監聽類|service存放服務接口類|impl存放服務實現類|util存放公共工具類|<模塊分類目錄>|controller存放模塊接口控制類|dao存放模塊數據接口類|impl存放模塊數據接口實現類|entity存放模塊實體類|service存放模塊服務接口類|impl存放模塊服務

12、接口實現類|sql存放Mybatis/Ibatis Sql文件2.2 源文件結構規則規則2.2.3 類變量的聲明順序是public,protected,package,private公共變量(Public)保護變量(Protected)包一級別的變量(沒有訪問修飾符)私有變量(Private)根據實際變量的引用范圍適當采用。規則2.2.4 變量、常量的注釋應放在其上方相鄰位置或右方 規則2.2.5 用遞增的方式寫構造器(比如:參數多的寫在后面) 規則2.2.6 類變量的存取方法:get和set方法規則2.2.7 如果定義main() 方法,必須將main方法寫在類的底部3 文件命名規則規則3.

13、1 JSP文件命名xxxMain.jsp主頁面xxxInsert.jsp新增頁面xxxUpdate.jsp 修改頁面xxxDetail.jsp 詳情頁面規則3.2 Java文件命名接口控制類模塊名Controller.java數據接口類I模塊名Dao.java數據接口實現類模塊名DaoImpl.java服務接口類I模塊名Service.java服務接口實現類模塊名ServiceImpl.java實體類數據庫表名(去掉數據庫前綴、下劃線).javasql文件實體類名.sqlMap4 排版規則4.1 語句排版規則規則4.2.1簡單語句每行至多包含一條語句argv+; / 正確argc-; / 正確

14、argv+; argc-; / 禁止這樣使用!int i = 0;/ 正確int j = 0;/ 正確Int i = 0, j = 0;/ 禁止這樣使用!規則4.2.2 復合語句被括其中的語句縮進一個層次規則4.2.3 左大括號""應位于復合語句起始行的行尾,前面需加一個空格符;右大括號""應另起一行并與復合語句首行對齊。示例:for (initialization; condition; update) statements;規則4.2.4 必須用""和""將if內的語句括起來。(即使只有一條語句的情況下)正確:

15、If (condition) System.out.println(“正確”);錯誤:if(condition)System.out.println(“錯誤”);規則4.2.5 在多層嵌套的for語句中,應在for上一行增加邏輯注釋規則4.2.6 “=”等運算符前后加一個空格規則4.2.7 重載方法按照參數個數升序排序建議4.2.8 行長度超過一屏時必須適當折行,以不出現橫向滾動條為宜5 注釋規則5.1 類注釋規則規則5.1.1 類注釋示例:/* * see 類名注釋 * author 作者 */規則5.1.2 方法注釋示例:/* * see 方法功能 * param 參數類型及含義 * re

16、turn 如有返回值需注明返回數據類型及含義 * author 作者 */規則5.1.3 單行注釋雙斜杠+空格+內容除if else注釋在左大括號后以外,其余注釋于代碼的上一行規則5.1.4 類屬性必須用單行注釋其含義6 命名規則6.1 包命名規則規則6.1.1包的名字全部小寫,所有包必須基于con.56sino6.2 類命名規則規則6.2.1類名用英文名稱,禁止漢語拼音。規則6.2.2類名是名詞,采用大小寫混合的方式,每個單詞的首字母大寫規則6.2.3類名不要用復數規則6.2.4類名使用完整單詞,避免縮寫詞(除非該縮寫詞被廣泛使用)規則6.2.5 盡量簡短易懂規則6.2.6 接口控制類后加C

17、ontroller規則6.2.7 服務接口類前面加大寫I,后加Service規則6.2.8 服務接口實現類后加ServiceImpl規則 6.2.9 數據接口類前加大寫I,后加Dao規則6.2.10 數據接口實現類后加DaoImpl規則6.2.11 實體類與對應數據庫表名一致(去掉數據庫前綴和下劃線)6.3 方法命名規則規則6.3.1 首字母小寫,其他首字母大寫規則6.3.2 方法名準確描述方法的功能,禁止無意義或含義不清的方法名規則6.3.3 通用方法名新增 xxxInsert修改 xxxUpdate刪除 xxxDelete查詢單體xxxLoad查詢結合xxxList/xxxMap分頁xxx

18、Page規則6.3.4 前臺js調用controller,controller調用service,service調用dao,dao調用sql語句,方法名保持一致規則6.3.5 參數用全英文命名。首字母小寫,后續單詞首字母大寫6.4 變量命名規則規則6.4.1 變量名采用大小寫混合的方式,第一個單詞的首字母小寫,其后單詞的首字母大寫規則6.4.2 除一次性的臨時變量(如for循環變量)以外,不能用單個字符的變量名規則6.4.3 如果變量名代表集合,如Map, List等,在變量名后加對應集合名字List,Map建議6.4.4 變量名要簡短且富于描述,能夠指出其用途建議6.45 臨時變量通常被取名

19、為i,j,k,m和n,它們一般用于整型;c,d,e,它們一般用于字符型6.5 常量全部用大寫字母,單詞間用下劃線隔開6.6 數組命名規則,將放在類型后6.7 Boolean getter 方法命名規則規則6.7.1所有布爾型get方法必須用單詞”is”作為前綴。”is”為小寫,后續單詞首字母大寫,其余字母小寫6.8 sqlMap文件命名規范規則6.8.1 實體類名字+.xml規則6.8.2 命名空間為實體類名字規則6.8.3 簡稱為實體類名字簡稱7 程序日志打印規則7.1后臺不允許出現sysout控制臺打印日志;規則7.2前臺不允許出現alert輸出語句,調試完成后必須刪除規則7.3日志打印類統一采用log4j打印,不允許使用其它jar包提供的類似方式;規則7.4日志級別INFO、ERROR;info為提示信息,error為錯誤信息 8 程序效率規則8.1 不要在循環內執行重復操作可在循環外調用一次的,就避免在循環內進行不必要的反復調用。示例:for (int i = 0; i < dw.getRowCount(); i+) 應寫成:int rows = dw.getRowCount();for (int i = 0; i <row

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論