C#項目代碼規范


目的

  1.方便代碼的交流和維護。

  2.不影響編碼的效率,不與大眾習慣沖突。

  3.使代碼更美觀、閱讀更方便。

  4.使代碼的邏輯更清晰、更易於理解。

在C#中通常使用的兩種編碼方式如下

  Camel(駝峰式): 大小寫形式-除了第一個單詞,所有單詞第一個字母大寫,其他字母小寫。
  Pascal(帕斯卡): 大小寫形式-所有單詞第一個字母大寫,其他字母小寫。

C#代碼規范

1、 類型(類、結構、委托、接口)、字段、屬性、方法、事件的命名

  優先考慮使用英文(盡量使用英文),如果實在沒有合適的英文進行描述,可以使用拼音,使用中文是不符合要求的。

2、不使用縮寫

  所有類型、字段、屬性、方法、事件盡量不使用縮寫,包括大家熟知的縮寫,例如msg。

3、不使用單個字母的變量

  不使用單個字母的變量, 像 i、m、n,使用index等來替換,用於循環迭代的變量除外。

 

4、用Tab作為縮進,並設置縮進大小為4

5、 注釋

類型、屬性、事件、方法、方法參數,根據需要添加注釋。

如果類型、屬性、事件、方法、方法參數的名稱已經是自解釋了,不需要加注釋;

否則需要添加注釋。

6、類型名稱和源文件名稱一致

當類型命名為Product時,其源文件命名只能是Product.cs。

7、所有命名空間、類型名稱使用Pascal風格

8、本地變量、方法參數名使用Camel風格(不使用下划線)

紅色標記的為使用Camel風格的變量或者方法參數

9、在一個類中,各個方法需用一空行(最好是一個空行)

10、避免使用大文件。如果一個文件里的代碼超過300-400行,必須考慮將代碼分開到不同的類中。同時避免寫太長的方法,如果一個方法代碼過長(暫時沒有明確指出方法的行數),應該考慮將其分解為不同的方法

11、一個方法只完成一個任務。不要把多個任務組合到一個方法中,即使那些任務非常小

12、調用類型成員內部其他成員,需加this,調用父類成員需加base

13、不在代碼中使用具體的路徑和驅動器名。 使用相對路徑,並使路徑可復用

14、不要“捕捉了異常卻什么也不做“。如果隱藏了一個異常,你將永遠不知道異常到底發生了沒有

15、如果if語句塊的內容只有一行,可以不加花括號,並且最好和if語句位於同一行

16、類型內部的私有字段和受保護字段,使用Camel風格命名,但加“_”前綴

 

17、類型成員的排列順序

類型成員的排列順序自上而下依次為:

字段:私有字段、受保護字段

屬性:私有屬性、受保護屬性、公有屬性

事件:私有事件、受保護事件、公有事件

構造函數:參數數量最多的構造函數,參數數量中等的構造函數,參數數量最少的構造函數

方法:重載方法的排列順序與構造函數相同,從參數數量最多往下至參數最少

18、委托和事件的命名

委托以EventHandler作為后綴命名,例如 SalesOutEventHandler。

事件以其對應的委托類型,去掉EventHandler后綴,並加上On前綴構成。

示例代碼如下:

19、返回bool類型的方法、屬性的命名

如果方法返回的類型是bool類型,則其前綴為Is,例如:IsHidden。

如果某個屬性的類型為bool類型,則其前綴為Can,例如:CanHidden。

20、常見集合后綴類型命名

凡符合下表所列的集合類型,應添加相應的后綴。

21、常見字段、屬性命名

字段、屬性種類比較繁雜,因此僅列出最常用的幾項


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM