Skip to content

有關 .NET 技術文檔與命名規範的演變

TLDR

  • .NET 技術文件已從 MSDN 全面遷移至 Microsoft Learn 平台。
  • 舊版 .NET 文件可於 Microsoft Learn 的「舊版文件」專區查詢。
  • C# 私有欄位(Private Field)命名規範已由「不加前綴」演變為「使用底線 _ 前綴」。
  • 現代 .NET 規範(源自 .NET CoreFX)建議:私有欄位使用 _ 開頭,靜態欄位使用 s_ 開頭,執行緒靜態欄位使用 t_ 開頭。

MSDN 平台的轉型與遷移

什麼情況下會遇到這個問題:當開發者嘗試搜尋舊有的 .NET 技術文件或 API 參考時,可能會發現原有的 MSDN 連結已失效或被重新導向。

過去 .NET 技術文件主要集中在 MSDN(Microsoft Developer Network)平台。目前該平台已正式淘汰,所有內容已遷移至 Microsoft Learn。若需查找舊版 .NET 文件,可前往 Microsoft Learn 舊版文件 進行搜尋。

小結論:MSDN 已成為歷史,現行 .NET 技術文件皆統一收錄於 Microsoft Learn。

C# 私有欄位命名規範的演變

什麼情況下會遇到這個問題:在維護跨越不同時期(.NET Framework 與 .NET Core/5+)的專案時,會發現程式碼風格存在顯著差異,導致命名規範不一致。

早期規範:不使用前綴

在早期的 .NET Framework 時代,官方建議不使用任何前綴來標示成員變數。若需區分區域變數與成員變數,建議使用 this. 關鍵字。

現代規範:使用底線前綴

隨著 .NET Core 的發展,官方於 2016 年提出的 .NET CoreFX Coding Style 中確立了新的命名慣例,並在 .NET 5 後成為主流標準。

現代規範建議如下:

  • 私人執行個體欄位:使用 _ 開頭,後接 camelCase。
  • 靜態欄位:使用 s_ 開頭。
  • 執行緒靜態欄位:使用 t_ 開頭。
  • 靜態唯讀欄位:static 應置於 readonly 之前(例如:static readonly)。

驗證結果

觀察 Reference Source 可發現,早期程式碼中存在無前綴、_ 前綴與 m_ 前綴混用的現象。而現代 .NET 原始碼與開源專案已普遍遵循 _ 前綴規範,這不僅提升了程式碼的可讀性,也讓成員變數與區域變數的區分更加直觀。

小結論:現代 .NET 開發應優先採用 _ 前綴的命名規範,以符合官方文件與主流開源專案的風格。

異動歷程

    • 初版文件建立。