Learning path

設計模式

這是一系列關於軟體設計模式的介紹文章,涵蓋建立型、結構型與行為型模式,用C#範例與生活化的小故事,帶你輕鬆學習。

24 篇系列文章 0 篇核心入口

Start here

從這篇開始

先讀這篇建立共同語言,再往下看完整閱讀順序。

01 搞懂設計模式到底是什麼? 想寫出好維護、易擴充的程式碼?這篇文章帶你快速入門設計模式(Design Patterns),搞懂建立型、結構型與行為型模式的核心概念。 一般更新 2025-06-11 開始閱讀

Full archive

完整閱讀順序

  1. 01 搞懂設計模式到底是什麼? 想寫出好維護、易擴充的程式碼?這篇文章帶你快速入門設計模式(Design Patterns),搞懂建立型、結構型與行為型模式的核心概念。 一般更新 2025-06-11 點閱 0
  2. 02 單例模式:只要一個就夠! 單例模式 (Singleton Pattern) 確保一個類別只有一個實例。本文透過 C# 範例,示範如何實作並應用於系統設定管理等場景。 一般更新 2025-06-12 點閱 0
  3. 03 工廠方法模式:點披薩不用親自下廚 工廠方法模式 (Factory Method) 讓你將物件建立邏輯封裝起來。透過 C# 披薩工廠範例,學習如何讓程式碼更具彈性與可維護性。 一般更新 2025-06-12 點閱 0
  4. 04 抽象工廠模式:系列產品輕鬆生產 抽象工廠模式 (Abstract Factory) 能協助你建立一系列相關或相依的物件。本文以 C# 家具工廠為例,教你如何輕鬆管理產品系列。 一般更新 2025-06-12 點閱 0
  5. 05 原型模式:複製的藝術 原型模式 (Prototype Pattern) 透過複製現有物件來建立新物件,省去繁瑣的初始化過程。本文使用 C# 履歷表範例帶你實作。 一般更新 2025-06-12 點閱 0
  6. 06 建造者模式:一步步完成複雜任務 建造者模式 (Builder Pattern) 將複雜物件的建構過程與表示分離。透過 C# 三明治點餐範例,學習如何一步步構建複雜物件。 一般更新 2025-06-12 點閱 0
  7. 07 介面卡模式:讓不相容也能合作 介面卡模式 (Adapter Pattern) 就像轉接頭,讓不相容的介面能順利合作。本文以 C# 充電器轉接範例,示範如何解決介面衝突。 一般更新 2025-06-12 點閱 0
  8. 08 橋接模式:抽象與實作分離 橋接模式 (Bridge Pattern) 將抽象與實作分離,讓兩者能獨立變化。透過 C# 遙控器與電視範例,了解如何降低耦合並提升擴充性。 一般更新 2025-06-12 點閱 0
  9. 09 組合模式:樹狀結構的好幫手 組合模式 (Composite Pattern) 讓你用一致的方式處理個別物件與物件群組。本文透過 C# 檔案系統範例,示範樹狀結構的實作。 一般更新 2025-06-12 點閱 0
  10. 10 裝飾者模式:讓功能自由加點 裝飾者模式 (Decorator Pattern) 讓你不需修改原有程式碼,就能動態為物件添加新功能。本文透過 C# 咖啡加料範例輕鬆學會。 一般更新 2025-06-12 點閱 0
  11. 11 外觀模式:化繁為簡 外觀模式 (Facade Pattern) 為複雜系統提供統一的簡化介面。本文透過 C# 家庭劇院範例,示範如何讓系統操作更直覺、更好維護。 一般更新 2025-06-12 點閱 0
  12. 12 享元模式:節省記憶體的利器 享元模式 (Flyweight Pattern) 透過共享物件大幅節省記憶體資源。本文以 C# 樹木生成範例,教你如何有效管理大量重複物件。 一般更新 2025-06-12 點閱 0
  13. 13 代理模式:控制存取的守門員 代理模式 (Proxy Pattern) 透過中介物件控制對目標物件的存取。本文利用 C# 檔案權限範例,示範如何實作安全控管與延遲載入。 一般更新 2025-06-12 點閱 0
  14. 14 責任鏈模式:層層把關的處理機制 責任鏈模式 (Chain of Responsibility) 將請求沿著處理鏈傳遞,直到被處理為止。本文以 C# 公文簽核範例,教你打造彈性的處理機制。 一般更新 2025-06-12 點閱 0
  15. 15 命令模式:靈活封裝的請求指令 命令模式 (Command Pattern) 將請求封裝成物件,支援撤銷與排程。本文透過 C# 餐廳點餐範例,示範如何解耦請求發送者與執行者。 一般更新 2025-06-12 點閱 0
  16. 16 解譯器模式:讓程式聽懂你的指令 解譯器模式 (Interpreter Pattern) 用於定義並解析自訂語言。本文透過 C# 文字冒險遊戲範例,教你如何實作指令解析系統。 一般更新 2025-06-12 點閱 0
  17. 17 迭代器模式:輕鬆遍歷集合元素 迭代器模式 (Iterator Pattern) 提供統一的方式遍歷集合元素,而不暴露內部結構。本文以 C# 音樂播放清單為例,示範如何輕鬆管理集合。 一般更新 2025-06-13 點閱 0
  18. 18 中介者模式:管理複雜溝通的好幫手 中介者模式 (Mediator Pattern) 集中管理物件間的溝通,降低耦合度。本文利用 C# 聊天室範例,示範如何簡化複雜的互動關係。 一般更新 2025-06-13 點閱 0
  19. 19 備忘錄模式:保存與恢復物件狀態 備忘錄模式 (Memento Pattern) 讓你能隨時保存並恢復物件狀態。本文透過 C# 遊戲存檔範例,教你如何實作狀態回復機制。 一般更新 2025-06-13 點閱 0
  20. 20 觀察者模式:即時通知的好幫手 觀察者模式 (Observer Pattern) 讓物件在狀態改變時能自動通知所有依賴者。本文以 C# YouTube 訂閱通知範例,示範即時更新機制的實作。 一般更新 2025-06-13 點閱 0
  21. 21 狀態模式:依狀態改變行為的祕訣 狀態模式 (State Pattern) 允許物件隨內部狀態改變而改變行為。本文透過 C# 手機鈴聲模式範例,示範如何消除複雜的條件判斷。 一般更新 2025-06-13 點閱 0
  22. 22 策略模式:靈活切換行為的好幫手 策略模式 (Strategy Pattern) 讓你定義一系列演算法並能靈活互換。本文以 C# 交通工具選擇範例,示範如何提升程式的彈性與可維護性。 一般更新 2025-06-13 點閱 0
  23. 23 模板方法模式:固定流程靈活實作 模板方法模式 (Template Method Pattern) 定義演算法骨架,將細節留給子類別實作。本文透過 C# 披薩製作範例,教你如何固定流程並保留彈性。 一般更新 2025-06-13 點閱 0
  24. 24 訪問者模式:新增功能不動既有架構 訪問者模式 (Visitor Pattern) 讓你在不改變物件結構下新增功能。本文以 C# 遊樂園設施範例,示範如何解耦資料結構與操作邏輯。 一般更新 2025-06-13 點閱 0