中介者模式的目的是什么呢?
????用一個中介對象來封裝一系列的對象交互。中介者使各對象不需要顯式地相互引用,從而使其耦合松散,而且可以獨立地改變它們之間的交互。
中介者模式的結(jié)構(gòu)

上圖就是一個典型的中介者模型的結(jié)構(gòu)圖了,從圖中我們也可以看出,中介者模式主要分了兩大類的角色:
1、中介者:結(jié)構(gòu)圖里的中介者主要包含,中介者接口,中介者實現(xiàn)類。中介者的主要職責(zé),通過協(xié)調(diào)各個同事對象實現(xiàn)協(xié)作行為。
2、Colleague Class(同事類):同事類中主要包含自己的行為,以及與中介者之間的通信方式。
中介者模式的優(yōu)缺點
優(yōu)點
1、減少了子類的生成,Mediator將原本分布于對象間的行為集中在一起。改變這些行為只需生成Mediator的子類即可。這樣各個Colleague類可被重用。
2、它將各個Colleague解耦,這個優(yōu)點很明顯,各個Colleague不需要相互依賴,對于擴(kuò)展性和復(fù)用性都提供了極大的便利。
3、它簡化了對象協(xié)議:從Colleague之間多對多的關(guān)系,到Mediator與Colleague之間一對多的關(guān)系,便于理解,維護(hù)和擴(kuò)展。
4、它對對象如何協(xié)作進(jìn)行了抽象。
缺點
1、它使控制集中化:過多的邏輯集中在中介者類中,使中介者類維護(hù)起來比較麻煩。
實現(xiàn)
????我們?nèi)粘5捻椖恐杏玫街薪檎吣J降牡胤竭€是比較多的,比如:我們在用Dubbo實現(xiàn)各個業(yè)務(wù)系統(tǒng)之前通信時,必不可少的就是注冊中心了,我們把各個業(yè)務(wù)系統(tǒng)的依賴關(guān)系都寫到了注冊中心中,讓注冊中心幫我們管理。這里就先不寫具體的實現(xiàn)了,等寫到觀察者模式的時候,會結(jié)合觀察者模式,寫一個Demo。畢竟他們兩個一起出鏡的幾率還是很高的。