中介者模式

1、中介者模式:又叫调停模式。即用个中介对象来封装一系列的对象交互。中介者使个对象不需要显示地相互应用,从而使得其耦合松散,而且可以独立地改变它们之间的交互。
2、优点:(1)、发送消息的连个对象都是通过中介者来完成的,降低了耦合度。(2)、由于把对象如何协作进行了抽象,将中介作为一个独立的概念并将其封装在一个对象中,这样关注的对象就从对象各自本身的行为转移到它们之间的交互上来,也就是站在一个更宏观的角度去看待系统。
3、注意:中介者模式很容易在系统中应用,也很容易在系统中吴用。当出现了“多对多”交互复杂的对象群时,不要基于使用中介者模式,而是要先反思系统设计上是否合理。
4、组成:

(1)、Mediator:中介者接口。在里面定义了各个同事之间相互交互所需要的方法,可以是公共的方法,如Change方法,也可以是小范围的交互方法。

(2)、ConcreteMediator:具体的中介者实现对象。它需要了解并为维护每个同事对象,并负责具体的协调各个同事对象的交互关系。

(3)、Colleague:同事类的定义,通常实现成为抽象类,主要负责约束同事对象的类型,并实现一些具体同事类之间的公共功能,比如,每个具体同事类都应该知道中介者对象,也就是每个同事对象都会持有中介者对象的引用,这个功能可定义在这个类中。

(4)、ConcreteColleague:具体的同事类,实现自己的业务,需要与其他同事对象交互时,就通知中介对象,中介对象会负责后续的交互。

原文地址:https://www.cnblogs.com/zxtp/p/4960506.html