[TOC] >[success] # 什么是中介者模式(菜鸟教程中策略模式总结) ~~~ 1.中介者模式(Mediator Pattern)是用来降低多个对象和类之间的通信复杂性。这种模式提供了一个'中介类', 该类通常处理不同类之间的通信,并支持松耦合,使代码易于维护 2.'主要解决':对象与对象之间存在大量的关联关系,这样势必会导致系统的结构变得很复杂,同时若一个对象发 生改变,我们也需要跟踪与之相关联的对象,同时做出相应的处理。 '何时使用':多个类相互耦合,形成了网状结构。 '如何解决':将上述网状结构分离为星型结构。 ~~~ >[danger] ##### 使用场景 ~~~ 1、系统中对象之间存在比较复杂的引用关系,导致它们之间的依赖关系结构混乱而且难以复用该对象。 2、想通过一个中间类来封装多个类中的行为,而又不想生成太多的子类。 ~~~ >[danger] ##### 优缺点 * 优点 ~~~ 1、降低了类的复杂度,将一对多转化成了一对一。 2、各个类之间的解耦。 3、符合迪米特原则。 ~~~ * 缺点 ~~~ 1、中介者会庞大,变得复杂难以维护。 ~~~