行為模式之Mediator 中介者

2021-05-22 17:07:03 字數 1008 閱讀 3795

mediator定義:

用乙個中介物件來封裝 一系列關於物件互動行為.

為何使用mediator?

各個物件之間的互動操作非常多;每個物件的行為操作都依賴彼此對方,修改乙個物件的行 為,同時會涉及到修改很多其他物件的行為,如果使用mediator模式,可以使各個物件間的耦合鬆散,只需關心和 mediator的關係,使多對多的關係變成了一對多的關係,可以降低系統的複雜性,提高可修改擴充套件性.

如何使用?

首先 有乙個介面,用來定義成員物件之間 的互動****:

public inte***ce mediator

meiator具體實現,真正實現互動操作的內容:

public class concretemediator implements mediator

再看看另外乙個參與者:成員,因為是互動 行為,都需要雙方提供一些共同介面,這種要求在visitor observer等模式中都是相同的.

public class colleague

public void setmediator( mediator mediator ) }

public class concretecolleague1

public class concretecolleague2

每個成員都必須知道mediator,並 且和 mediator聯絡,而不是和其他成員聯絡.

至此,mediator模式框架完成,可 以發現mediator模式規定不是很多,大體框架也比較簡單,但實際使用起來就非常靈活.

mediator模式在事件驅動類應用中比較多,例如 介面設計gui.;聊天,訊息傳遞等,在聊天應用中,需要有乙個messagemediator,專門負責request/reponse之間任務的調 節.

mvc是j2ee的乙個基本模式,view controller是一種mediator,它是jsp和伺服器上應用程式間的mediator.

設計模式之Mediator 中介者

mediator中介者模式定義 用乙個中介物件來封裝一系列關於物件互動行為.為何使用mediator?各個物件之間的互動操作非常多 每個物件的行為操作都依賴彼此對方,修改乙個物件的行為,同時會涉及到修改很多其他物件的行為,如果使用mediator模式,可以使各個物件間的耦合鬆散,只需關心和 medi...

設計模式之Mediator 中介者

mediator中介者模式定義 用乙個中介物件來封裝一系列關於物件互動行為.為何使用mediator?各個物件之間的互動操作非常多 每個物件的行為操作都依賴彼此對方,修改乙個物件的行為,同時會涉及到修改很多其他物件的行為,如果使用mediator模式,可以使各個物件間的耦合鬆散,只需關心和 medi...

Mediator 中介者 模式

問題 在物件導向系統的設計和開發過程中,物件之間的互動和通訊是最為常見的情況,因為物件間的互動本身就是一種通訊。在系統比較小的時候,可能物件間的通訊不是很多 物件也比較少,我們可以直接硬編碼到各個物件的方法中。但是當系統規模變大,物件的量變引起系統複雜度的急劇增加,物件間的通訊也變得越來越複雜,這時...