首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> C語言 >> 關於C語言

C# 編碼規範與最佳實務指南

     編輯:關於C語言

一、命名規範

項目規則範例
類別、方法、公開屬性PascalCasepublic class TextBox { public void DataBind() {} }
區域變數、方法參數camelCasestring userName; void AddUser(string userId, byte[] passWord)
私有成員欄位前綴 _private string _connectionString;
介面前綴 Iinterface ICompare { int Compare(); }
自訂屬性類別以 Attribute 結尾public class AuthorAttribute : Attribute {}
自訂例外類別以 Exception 結尾public class AppException : Exception {}
方法命名動賓片語ShowDialog(), CreateFile(), GetPath()

二、排版與結構

  • 縮排使用 Tab,非空白鍵。
  • 大括號 { 另起一行 (Allman 風格)。
  • 單行不超過 80 字元。
  • 成員變數宣告置於類別頂端,與方法間空一行。
  • 命名空間命名建議:公司名.產品名.功能區。
  • 目錄結構對應命名空間層級。
  • 檔案名稱與類別名稱一致,單檔單一類別或緊密相關類別群。

三、編碼習慣

  1. 使用 C# 內建別名 (string, int) 而非完整型別名 (System.String, System.Int32)。
  2. 避免手動修改設計器產生代碼;若必須修改,保持風格一致。
  3. 關鍵邏輯與變數宣告必須加註解。
  4. 字面常數 (Magic Numbers/Strings) 改用 const 或 enum。
  5. 嚴禁 goto。
  6. 公開/受保護欄位改用 屬性 封裝。
  7. 公開事件改用 事件存取器 (add/remove) 封裝。
  8. 型別轉換優先使用 as 搭配 null 檢查:
    Dog dog = animal as Dog; if (dog != null) { ... }
  9. 大量字串串接務必使用 StringBuilder。
  10. if/else/for/while 區塊永遠加大括號,即使單行。
  11. switch 必須有 default 處理非預期情況。
  12. 減少三元運算子 ?:,改用 if-else 增加可讀性。
  13. 避免不必要的 this.,僅在建構函式鏈結時使用:
    public Person() : this("Jim") {}
  14. 區域變數宣告盡量靠近使用位置。
  15. 使用控制項值時,建議先存入有意義命名的區域變數。
  16. using 指令:系統命名空間與自訂/第三方命名空間間空一行分隔。

四、總結

一致的編碼風格能大幅提升團隊協作效率、降低維護成本。建議專案導入靜態分析工具 (如 StyleCop、Roslyn Analyzers) 自動強制檢查。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved