1.Java命名規范
1.1 Package 的命名
Package 的名字應該都是由一個小寫單詞組成,例如:net.ebserIEs.modules。
1.2 Class 的命名
Class 的名字必須由大寫字母開頭而其他字母都小寫的單詞組成,例如:DataFile或InfoParser。
1.3 Class 變量的命名
變量的名字可大小寫混用,但首字符應小寫。詞由大寫字母分隔,限制用下劃線,限制使用美元符號( $),因為這個字符對內部類有特殊的含義。如: inputFileSize。
類中的屬性不能定義為public變量直接存取,而是定義成protect變量來防止繼承類使用他們並編寫get/set方法。
1.4 Class 屬性(成員變量)使用
Class 屬性(成員變量)使用一定要加前綴this或super標識對應的成員變量,以增加程序的可讀性。
1.5 Static Final 變量的命名
Static Final 變量的名字應該都大寫,並且指出完整含義,例如:final MAXUPLOADFILESIZE=1024。
1.6 方法的命名
方法名應該是動詞,大小寫可混用,但首字母應小寫。在每個方法名內,大寫字母將詞分隔並限制使用下劃線。參數的名字必須和變量的命名規范一致,問題參數名是否采用以下劃線開始作為統一標識,如setCounter(int _size),以標識成員變量size和傳入參數_size區別。使用有意義的參數命名,如果可能的話,使用和要賦值的字段一樣的名字:
setCounter(int size){
this.size = size;
}
1.7 數組的命名
數組應該總是用下面的方式來命名:byte[] buffer;而不是:byte buffer[];
2.代碼格式
2.1 代碼樣式
代碼應該用 unix 的格式,而不是 Windows 的(比如:回車變成回車+換行)
2.2 文檔化
必須用 javadoc 來為類生成文檔。不僅因為它是標准,這也是被各種 Java 編譯器都認可的方法。
2.3 縮進
縮進應該是每行4個空格. 不要在源文件中保存Tab字符. 在使用不同的源代碼管理工具時Tab字符將因為用戶設置的不同而擴展為不同的寬度.
2.4 大括號{}
{} 中的語句應該單獨作為一行. 例如, 下面的第1行是錯誤的, 第2行是正確的:
if (i>0) { i ++ }; // 錯誤, { 和 } 在同一行
if (i>0) {
i ++
}; // 正確, { 單獨作為一行
2.5 括號()
左括號和後一個字符之間不應該出現空格, 同樣, 右括號和前一個字符之間也不應該出現空格. 下面的例子說明括號和空格的錯誤及正確使用:
CallProc( AParameter ); // 錯誤
CallProc(AParameter); // 正確
不要在語句中使用無意義的括號. 括號只應該為達到某種目的而出現在源代碼中。下面的例子說明錯誤和正確的用法:
if ((I) = 42) { // 錯誤 - 括號毫無意義
if (I == 42) or (J == 42) then // 正確 - 的確需要括號
2.6 注釋
// 注釋一行
/* ...... */ 注釋若干行
文檔注釋:
/** ...... */ 注釋若干行,並寫入 Javadoc 文檔
在每個源文件的頭部要有必要的注釋信息,包括:文件名;版本號;作者;生成日期;模塊功能描述(如功能、主要算法、內部各部分之間的關系、該文件與其它文件關系等。
在每個函數或過程的前面要有必要的注釋信息,包括:函數或過程名稱;功能描述;輸入、輸出及返回值說明;調用關系及被調用關系說明等。
3. 方法
l 方法的規模盡量限制在200行以內。
l 一個方法最好僅完成一件功能。
l 為簡單功能編寫方法。
l 方法的功能應該是可以預測的,也就是只要輸入數據相同就應產生同樣的輸出。
l 盡量不要編寫依賴於其他方法內部實現的方法。
l 避免設計多參數方法,不使用的參數從接口中去掉。
l 用注釋詳細說明每個參數的作用、取值范圍及參數間的關系。
l 檢查方法所有參數輸入的有效性。
l 檢查方法所有非參數輸入的有效性,如數據文件、公共變量等。
l 方法名應准確描述方法的功能。
l 避免使用無意義或含義不清的動詞為方法命名
l 方法的返回值要清楚、明了,讓使用者不容易忽視錯誤情況。
l 明確方法功能,精確(而不是近似)地實現方法設計。
l 減少方法本身或方法間的遞歸調用。
l 編寫可重入方法時,若使用全局變量,則應通過關中斷、信號量(即P、V操作)等手段對其加以保護。
4. JSP規范
4.1 JSP目錄命名規范
參照Package命名規則,用小寫單個單詞作為目錄名
4.2 JSP文件名規范
參照class命名規則,采用首子母大寫,多單詞間采用大寫字母分割
4.3 JSP傳遞參數命名規則
參照class變量命名規劃
4.4 文件命名其它常見規范
l JSp主頁面(游覽功能) XxxxIndex.JSP (一般記錄的刪除在此頁面做連接)
l jsp添加功能頁面 XxxxAdd.JSp,相關的處理頁面XxxxAddAction.JSP
l jsp修改功能頁面 XxxxModify.JSp, 相關的處理頁面XxxxModifyAction.JSP
l jsp刪除功能頁面 XxxxDel.JSp, 相關的處理頁面XxxxDelAction.JSP