📌 30 秒摘要(Layer 3)
用大量圖解、故事、練習把 GoF 的設計模式講到「好懂又記得住」。但它真正的價值是把模式背後的設計原則提煉成一份清單——封裝變化、組合優於繼承、針對介面、鬆耦合、開閉原則、依賴反轉、好萊塢原則、最少知識。學會這些原則,你就能理解「為什麼」用某個模式,而不是死背 23 個。
🗺 心智圖(Canvas)
HeadFirst 設計模式
Link to original
🧰 這本書給我的工具
- 工具-開閉原則 — 想讓程式「好擴充、不動舊碼」時
- 工具-好萊塢原則與依賴反轉 — 想理清高低層模組的依賴方向時
(另有多個原則與 設計模式 共通:見 工具-封裝變化點、工具-針對介面編程、工具-優先組合而非繼承)
✨ 關鍵重點(Layer 1–2)
- 設計原則清單:封裝變化、組合優於繼承、針對介面編程、力求鬆耦合、對擴充開放對修改關閉(OCP)、依賴抽象(DIP)、好萊塢原則、最少知識(迪米特)。
- 鬆耦合:讓互動的物件之間所知越少越好(如 Observer)。
- 學原則 > 背模式:懂原則就能自己推導出模式。
💬 金句原文(Layer 0)
- 「別打電話給我們,我們會打給你。」(好萊塢原則)
🔗 相關
- 完整模式目錄與更正式的定義見 設計模式(GoF)