大话设计模式读书笔记--20.中介者模式

定义

封装对象间的交互,使得对象之间不必显示的引用,从而可以独立的改变他们之间的交互

解决: 对象之间相互链接,关系复杂, 一个对象不可能在没有其他对象的支持下工作,系统变现为不可分割的一个整体,但类与类之间不必直接通信的问题

比如: 两个国家的摩擦,通过联合国协商, 联合国就是中介者

模式结构

代码实现

场景:美国和伊拉克通过联合国协商核武器问题

代码实现:点击下载

特点和使用场景

优点: 减少了各个Colleague的耦合,使得可以独立的改变和复用Colleague和Mediator 

缺点: 由于ConcreteMediator的集中控制,把交互的复杂性变成了中介者的复杂性

使用场景: 系统中出现多对多交互复杂的对象群时

原文地址:https://www.cnblogs.com/liuconglin/p/6527903.html