參考資料:
CMAndroidBook - Coding Style
2021 iThome 鐵人賽 Day 11. Coding style
Wiki 駝峰式大小寫
駝峰式大小寫 (Camel-Case)
- 單字間不以空格、連接號、底線連結
- 錯誤寫法 -> my variable、my-variable、my_variable
- 命名形式分為兩種
- 小駝峰式命名法(lower camel case)
- 第一個單字以小寫字母開始,第二個單字的首字母大寫
- Ex. myVariable
- 大駝峰式命名法(upper camel case)
- 每一個單字的首字母都採用大寫字母
- Ex. MyVariable
- 也可以稱為Pascal命名法(Pascal Case)
- 小駝峰式命名法(lower camel case)
整體結論
- Code 裡除了註解和字串,其餘不得使用中文字
- No
region
、endregion
- MagicNumber 請一律宣告成常數、變數或enum
- 禁用無大括號單行 else -> Dangling Else
- Compile 後有 Warning 的程式碼就是有問題,更不用說有 Error
- 常數命名一律用全大寫配底限分隔 Ex. MAX_MAP_WIDTH
- 命名時請勿自行縮寫單字,除非該單字縮寫是通用的
- Class、方法須遵守 大駝峰式命名 規則
- 參數、區域變數須遵守 小駝峰式命名 規則
- 方法的第一個單字必須為動詞(Get、Push、Delete、Update…等等)
- 單字不能超過3個(太長的專有名詞須先建立縮寫表,統一所有人使用的縮寫)
檔案
- 大駝峰命名 Ex. StringParser.cpp
- 檔案名與類別需同名
// StringParser.cpp // 正確 class StringParser{ } // 錯誤 class OtherClass{ }
- 理論上一個檔案只有一個主要類別
// StringParser.cpp class StringParser{ } class DoAnything{ }
類別的命名
- 大駝峰命名
- 使用名詞或形容詞 + 名詞的方式命名
// 正確 class NestedStructure{ } //錯誤 class GetPosition{ }
方法的命名
- 小駝峰命名
- 使用動詞或動詞 + 名詞的方式命名
std::pair<int,int> getPosition{ }
- 方法的參數或區域變數名使用小駝峰命名
std::pair<int,int> getPosition(std::string objectName){ }
- 以 Boolean 作為回傳值的命名,需使用 isXXX, canXXX, hasXXX, 或 XXXable 命名。
bool isEmpty(){ }
Package name 的命名
- 全小寫
Resource 的命名
- 全小寫
- 以畫面使用的位置+功能 來命名
- activity_xxx.xml
- layout_xxx.xml
- selector_xxx.xml
- …
View id 的命名
- 功能+使用元件 來命名
- login_textView
- reply_us_editText
- xxx_textView
- xxx_editText
- xxx_button
- xxx_linearLayout(constraintLayout,..)
- …
- 本文連結:https://blog.subarya.me/2022/04/08/[Coding%20Style]%20%E5%91%BD%E5%90%8D%E6%B3%95/
- 版權聲明:本Blog所有文章除了特別聲明外,均默認採用 許可之協議。