Design Pattern For PHP
设计模式类型
行为型设计模式
设计模式名称
中介者模式
模式定义
中介者模式(Mediator Pattern)属于类的行为模式之一,在多个对象需要相互交互时,使用中介者对象封装一些列对象的交互,中介者使各对象不需要显示的互相作用,从而使其松散耦合,而且可以独立地改变他们之间的交互。
UML
将对象之间的交互形式由原来的网状结构转化为星状结构
应用场景
1、系统对象之间存在比较复杂的引用关系,导致他们之间的依赖关系结构混乱而且难以复用
2、想通过一个中间类来封装多个类中的交涉行为
优缺点
优点
1、降低了类之间交互的复杂度,将一对多关系转化为一对多关系
2、各类之间解耦
3、符合迪米特原则(最少知识原则)
缺点
1、业务全部集成在中介者类中,后期维护将变得复杂
git地址
https://github.com/wonlon/Design-patterns