优点:
适当的使用调停者模式可以避免同事类之间的耦合,能够使调停类和同事类独立的变化。
调停者模式将多对多的关系改为一对多的关系,使得对象之间的关系更加利于维护。
调停者模式将对象的行为和协作抽象化,吧对象小尺度的行为和其他对象的相互作用分开。
缺点:
调停者模式减低了同事对象之间的复杂性,代价是增加了调停者类的复杂性。
调停者类经常充满了各个具体同事类的关系协调关系,这种代码经常是不能复用的。
使用条件:
调停者模式的用途是管理很多对象的相互作用。
结构:
抽象调停者:定义出同事对象到调停者对象的接口。一般有一个抽象类或者对象实现
具体调停者:知道所有的同事对象,他从具体对象接受消息,,想具体同事发送命令。
抽象同事类:
具体同事类:只知道调停者对象。