傳統 Windows 開發中,動態連結庫(DLL)是模組化的基石:編譯時不鏈接,執行時動態載入,實現程式碼共享與記憶體節省。但用 C/C++ 編寫 DLL 歷來繁瑣易錯。C# 配合 .NET 執行環境,讓建立與使用 DLL 如同編寫普通類別般簡單——只需簡單標記,編譯器自動處理匯出、元資料、版本綁定等繁重工作。
核心組織單元
- 編譯單元:單一原始碼檔(.cs),編譯器處理的最小單位,包含 using 指示詞、屬性、命名空間成員宣告。
- 命名空間:邏輯層級組織結構,可巢狀,支援內部/外部結構雙重角色。使用
using 指示詞簡化型別引用。
- 組件:物理部署單位(.exe 或 .dll),包含一或多個模組、型別定義、IL 程式碼、資源、組件參考清單、版本強名稱等。是安全權限、版本控制、側向執行的邊界。
章節知識地圖
- 基本概念:DLL 歷史與 .NET 組件模型對比、編譯單元結構、命名空間與組件關係
- 命名空間實戰:宣告語法、巢狀與非巢狀等價寫法、成員與型別存取層級規則
- using 指示詞深度:別名指示詞(解決衝突、簡化長名稱)、命名空間指示詞(批量匯入、優先級規則、避免歧義)
- 完整應用範例:多 DLL 協作、多型形狀遊戲、命令列編譯腳本(
csc /target:library、/reference)
為什麼這很重要?
良好的架構組織決定了專案的可維護性、可擴展性與團隊協作效率。掌握 .NET 的組件模型、命名空間設計原則與編譯部署流程,是從「寫代碼」進階為「工程化軟體建構」的必經之路。