1、大小寫約定
為了區分一個識別符號中的多個單詞,把識別符號中的每個單詞的首字母大寫。不要用下劃線來區分單詞,或者在識別符號中任何地方使用下劃線,有兩種方式適合大寫識別符號的字母:
PascalCasing(除了引數之外的所有識別符號,每個單詞的首字母大寫,字母縮寫用大寫,例如IOStream),
cameCasing(引數,開頭是縮寫的話也用小寫,例如ioStream);
不同型別的大小寫規則
不要把所謂閉合形式的複合詞中的每個字母首字母大寫(不知道複合詞請查英文字典),常用複合詞大小寫拼寫
2、命名約定
要為識別符號選擇易讀懂的名字
要看重可讀性,而不是簡潔性
不要用下劃線、連字元、其他非字母的字元
不要用匈牙利命名法 如frmUser,
不要用縮寫詞和縮略詞作為識別符號的組成部分,如GetWindow ->GetWin
不要使用未被廣泛使用的首字母縮寫詞
在程式設計中避免使用別名,勁量用CLR通用的型別名,如int應該用Int32
優先使用字尾而不是字首
程式集和DLL
名字空間和類名
不要引入太一般化的型別名,如Element、Node、Log、Message等等
類、結構、介面
要用名詞或者名詞短語來給類和結構命名
要用形容詞短語介面命名,用I字首
在派生類的末尾使用基類名字,如Attribute,SerializableAttribute
相對應的類和介面最好只有I區別
泛型引數的命名
要用描述性的名字來命名泛型型別的引數,引數加上字首T
或者採用單個字母T作為引數型別
常用的型別命名規則
列舉:要用單數名詞來命名列舉型別,除非它表示的是位域
不要給列舉值加字首
型別成員
用動詞活動詞短語給方法命名
不要讓屬性帶有Get…這類的看起來感覺很像方法
集合最好用複數,而不是加List之類的字尾
要用肯定性的短語,如CanSeek
事件
欄位