iT邦幫忙

第 12 屆 iThome 鐵人賽

1
Software Development

你終究都要學設計模式的,那為什麼不一開始就學呢?系列 第 53

Day53. 中介者模式

本文同步更新於blog

Mediator Pattern

集中相關對象的之間複雜的溝通與控制方式。


中介者模式會將類別分為兩類:
分別是中介者類別 (Mediator)合作者類別 (Colleague)


優點
容易新增/修改合作者。
容易新增/修改合作者之間的關係。
合作者間不必互相參考,使其達到鬆耦合。

缺點
中介者會成為神一般的存在(God Object)


與其他模式的比較:

[狀態模式]:
以關係圖來說,兩個模式皆透過相互參照的方式,消除同分類類別下的強耦合。


起初我會以為中介者模式會類似於Laravel的Container,
但兩者目的有很大的不同。

Container主要目的是單例模式與註冊表的實現。
而中介者關注在解除合作者之間的耦合關係。

ʕ •ᴥ•ʔ:World Peace!


上一篇
Day52. 範例:新產品開發(職責鏈模式)
下一篇
Day54. 範例:打招呼(中介者模式)
系列文
你終究都要學設計模式的,那為什麼不一開始就學呢?57

尚未有邦友留言

立即登入留言