定義:?(Mediator Pattern)

用一個(gè)中介對(duì)象封裝一系列的對(duì)象交互,中介者使各對(duì)象不需要顯示地相互作用,從而使耦合松散,而且可以獨(dú)立地改變它們之間的交互。

類圖:

啟示:

最近兩年,樓市瘋狂,房?jī)r(jià)漲的離譜。為了預(yù)防樓市泡沫,中央出臺(tái)一項(xiàng)項(xiàng)政策進(jìn)行調(diào)控。在這樣一個(gè)現(xiàn)實(shí)場(chǎng)景中,共有三個(gè)角色,買房者,房地產(chǎn)商,住建局。
買房者關(guān)注房地廠商的樓盤(pán)及房?jī)r(jià),決定是否買房;
房地廠商關(guān)注買方市場(chǎng),是否需要新建樓盤(pán);
住建局就來(lái)協(xié)調(diào)買方與賣方市場(chǎng),限購(gòu)限建。
三個(gè)角色相互依賴,相互交互。耦合性比較緊,如何來(lái)解耦呢?中介者來(lái)幫忙。
中介是誰(shuí)呢?就像你去買房,你肯定找中介啊,中介無(wú)所不知,他們即知道房地廠商有哪些樓盤(pán),又了解買房市場(chǎng)的需求,同時(shí)也很熟悉國(guó)家的樓市政策。

代碼:

/// <summary>
    /// 抽象角色(模塊)
    /// 主要實(shí)現(xiàn)中介的依賴注入
    /// </summary>
    public abstract class Role
    {        protected AbstractMediator mediator;        public Role(AbstractMediator mediator)        {            this.mediator = mediator;
        }
    }

延伸閱讀

學(xué)習(xí)是年輕人改變自己的最好方式-Java培訓(xùn),做最負(fù)責(zé)任的教育,學(xué)習(xí)改變命運(yùn),軟件學(xué)習(xí),再就業(yè),大學(xué)生如何就業(yè),幫大學(xué)生找到好工作,lphotoshop培訓(xùn),電腦培訓(xùn),電腦維修培訓(xùn),移動(dòng)軟件開(kāi)發(fā)培訓(xùn),網(wǎng)站設(shè)計(jì)培訓(xùn),網(wǎng)站建設(shè)培訓(xùn)學(xué)習(xí)是年輕人改變自己的最好方式