特殊命名規(guī)范
- 術(shù)語 "get/set" 不要和一個字段相連,除非它被定義為私有變量。
- 前面加 "is" 的變量名 應該 為布爾值,同理可以為 "has", "can" 或者 "should"。
- 術(shù)語 "compute" 作為變量名應為已經(jīng)計算完成的變量。
- 術(shù)語 "find" 作為變量名應為已經(jīng)查找完成的變量。
- 術(shù)語 "initialize" 或者 "init" 作為變量名應為已經(jīng)實例化(初始化)完成的類或者其他類型的變量。
- UI (用戶界面)控制變量應在名稱后加控制類型,例如: leftComboBox, TopScrollPane。
- 復數(shù)必須有其公共的名稱約定(原文:Plural form MUST be used to name collections)。
- 帶有 "num" 或者 "count" 開頭的變量名約定為數(shù)字(對象)。
- 重復變量建議使用 "i", "j", "k" (依次類推)等名稱的變量。
- 補充用語必須使用補充詞,例如: get/set, add/remove, create/destroy, start/stop, insert/delete, begin/end, etc.
- 能縮寫的名稱盡量使用縮寫。
- 避免產(chǎn)生歧義的布爾變量名稱,例如:
isNotError, isNotFound 為非法
- 錯誤類建議在變量名稱后加上 "Exception" 或者 "Error"。
- 方法如果返回一個類,則應該在名稱上說明返回什么;如果是一個過程,則應該說明做了什么。
文件
- 縮進請使用 4 個空白符的制表位。
- 如果您的編輯器支持 文件標簽_(file tags),請加添如下的一行使我們的代碼更容易閱讀:
// vim:ts=4:noet:tw=0:
譯注:老外用 VIM 編輯器比較多,此條可以選擇遵循。 代碼折疊必須看起來是完成并且是合乎邏輯的:
var someExpression = Expression1 + Expression2 + Expression3;
var o = someObject.get( Expression1, Expression2, Expression3 );
注:表達式的縮進與變量聲明應為一致的。
注:函數(shù)的參數(shù)應采用明確的縮進,縮進規(guī)則與其他塊保持一致。
變量
- 變量必須在聲明初始化以后才能使用,即便是 NULL 類型。
- 變量不能產(chǎn)生歧義。
- 相關(guān)的變量集應該放在同一代碼塊中,非相關(guān)的變量集不應該放在同一代碼塊中。
- 變量應該盡量保持最小的生存周期。
- 循環(huán)/重復變量的規(guī)范:
- 只有循環(huán)控制塊的話,則必須使用 FOR 循環(huán)。
- 循環(huán)變量應該在循環(huán)開始前就被初始化;如使用 FOR 循環(huán),則使用 FOR 語句初始化循環(huán)變量。
- "do ... while" 語句是被允許的。
- "break" 和 "continue" 語句仍然允許使用(但請注意)。
- 條件表達式
- 應該盡量避免復雜的條件表達式,如有必要可以使用臨時布爾變量。
- The nominal case SHOULD be put in the "if" part and the exception in the "else" part of an "if" statement.
- 應避免在條件表達式中加入塊。
- 雜項
- 盡量避免幻數(shù)(Magic numbers),他們應該使用常量來代替。
- 浮點變量必須指明小數(shù)點后一位(即使是 0)。
- 浮點變量必須指明實部,即使它們?yōu)榱悖ㄊ褂?0. 開頭)。
出處:藍色理想
責任編輯:moby
上一頁 Dojo Javascript 編程規(guī)范 [1] 下一頁 Dojo Javascript 編程規(guī)范 [3]
◎進入論壇網(wǎng)絡編程版塊參加討論
|