Mediator vs Observer vs Facade 完整比較:3 種物件通訊模式
Mediator 在中央協調錯綜複雜的物件關係,Observer 以一對多通知狀態變更,而 Facade 則用單一入口包裝複雜內部。本文透過 Swift 範例比較三種模式的差異與選擇依據。
閱讀文章精選主題 · 27 篇文章
從基礎原理到實務取捨,系統化瀏覽 設計模式 文章。
最新文章
Mediator 在中央協調錯綜複雜的物件關係,Observer 以一對多通知狀態變更,而 Facade 則用單一入口包裝複雜內部。本文透過 Swift 範例比較三種模式的差異與選擇依據。
閱讀文章Adapter 用於轉換介面,Facade 用於隱藏複雜度,Proxy 用於控制存取,Decorator 用於新增功能。本文依照意圖與選擇標準,比較四種結構相似的包裝模式。
閱讀文章Strategy 模式從外部選擇演算法,State 模式則由目前狀態主導內部轉換。這兩種具有相同類別結構的行為模式,應透過意圖與變更主體加以區分。
閱讀文章翻開設計模式的書,總會在接近最後的地方看到直譯器模式。這是很容易因為「這到底什麼時候會用到」而隨便跳過的模式。
閱讀文章你是否曾在不同類別中複製貼上相似邏輯,心想「這好像不太對」?在 iOS App 裡,當你第三次複製各畫面的資料載入程式碼時,手往往就會停下來。
閱讀文章Facade Pattern 會在多個物件交織的子系統前,提供一個簡單的單一入口。本文以 Swift 會員註冊為例,說明如何集中管理呼叫順序,以及它與 Adapter、Proxy、Decorator 的差異。
閱讀文章開發 App 時,有時需要建立數千甚至數萬個相似物件。最典型的例子是在地圖上撒出數萬個標記;在這種情況下,記憶體圖表很容易持續攀升。
閱讀文章Swift 工廠函式會為建立邏輯加上表達意圖的名稱,並讓回傳型別與重用策略更具彈性。本文整理選擇 static func 而非 init 的判斷標準,以及它與 GoF 工廠方法的差異。
閱讀文章適配器模式會將舊版 API 的介面轉換成新程式碼所期待的協定。本篇整理如何在 Swift 中建立轉換邊界、簡化替換與測試,以及它和其他包裝模式的差異。
閱讀文章進行 Swift 開發時,經常會遇到只用一行 static let shared 建立的 Singleton。
閱讀文章