1. 程式人生 > >外觀模式、代理模式和中介者模式的區別

外觀模式、代理模式和中介者模式的區別

外觀模式(Facade Pattern)
定義一個外觀類,外觀類隱藏系統的複雜性,為客戶端提供簡化的方法和對現有系統類方法的委託呼叫。
例如:二手房交易的中介,屬於外觀模式。買房者通過中介可以簡單地買到二手房,中介自己把聯絡房東看房砍價、過戶、交稅這些複雜的事情都搞定了。

代理模式(Proxy Pattern)
用一個代理類代表另一個類的功能,但是不改變被代理類的功能。目的是控制對被代理類的訪問。

中介者模式(Mediator Pattern)
用一箇中介物件來封裝一系列的物件互動,中介者使各物件不需要顯式地相互引用,從而使其耦合鬆散,而且可以獨立地改變它們之間的互動。將各物件之間的網狀結構分離為星型結構。
例如:MVC 框架,其中C(控制器)就是 M(模型)和 V(檢視)的中介者。微信群是各群員之間的中介者。