設計模式之中介模式

在前面的學習模式的時候,說到,代理模式,我當時用中介舉例,有點不合適,因爲在設計模式中,原來專門就有一個模式就是中介模式。

其實,代理模式,還是它最基本的含義,代理,就是生產商,生產處東西,要賣給你,需要代理商,代理商決定到底賣不賣給你,對於,他是否賣給其他人,你和其他人之間是沒有任何關係的,你們不進行通信。

而這裏的中介模式,則不同,爲什麼?他是個正直的中間人,比如,你要從房子中介裏租房子,可是,你一個人租金太高,承擔不了,而同樣也有個人面臨這樣的問題,這時,中介知道,這個情況,把這個事情,告訴,你們2個人,然後,你們2個覺得合適,就一起租房子。

本來,如果沒有,中介,那麼你就租不了房子,現在,有了中介,你找到這麼一個人,進行通信,然後,實現最終的目的。

中介,其實,就是個中間通訊人。

來看下中介者模式的組成部分吧。

1)        抽象中介者(Mediator)角色:抽象中介者角色定義統一的接口用於各同事角色之間的通信。

2)        具體中介者(Concrete Mediator)角色:具體中介者角色通過協調各同事角色實現協作行爲。爲此它要知道並引用各個同事角色。

3)        同事(Colleague)角色:每一個同事角色都知道對應的具體中介者角色,而且與其他的同事角色通信的時候,一定要通過中介者角色協作。


中介,其實,就是起到了同事解耦的作用。

你們同事之間需要交流,有這麼一箇中介管理,來傳遞,不需要必須兩個人面對面的交流,你們不需要那麼緊密的關係。

當你們人數特別多的時候,就體現出來了,你有個消息要告訴100個人,那麼有2個選擇:

1.你去當面一個一個找到,然後告訴他。(聯繫緊密)

2.通過門房的管理員,告訴他,見到這100個人,告訴他們消息。(相當於中介)

你感覺那種方式會好點、?

這個模式也是比較容易理解的。

有需要看代碼的來點這裏:http://zz563143188.iteye.com/blog/1847029

發佈了107 篇原創文章 · 獲贊 8 · 訪問量 7萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章