• 欢迎来到本博客,希望可以y一起学习与分享

PHP设计模式——中介者模式

PHP benz 5年前 (2017-12-19) 285次浏览 0个评论 扫描二维码

中介者模式用一个中介者对象来封装一系列的对象交互。中介者使得各对象不需要显式地相互引用,从而使其松散耦合,而且可以独立地改变它们之间的交互。

UML类图:

角色:

中介者接口(UnitedNations):在里面定义了各个同事之间相互交互所需要的方法。
具体的中介者实现对象(UnitedCommit):它需要了解并为维护每个同事对象,并负责具体的协调各个同事对象的交互关系。
同事类的定义(Country):通常实现成为抽象类,主要负责约束同事对象的类型,并实现一些具体同事类之间的公共功能,
具体的同事类(China):实现自己的业务,需要与其他同事对象交互时,就通知中介对象,中介对象会负责后续的交互。

核心代码:

调用客户端测试代码:

适用场景:

1、如果一组对象之间的通信方式比较复杂,导致相互依赖,结构混乱,可以采用中介者模式
2、如果一个对象引用很多对象,并且跟这些对象交互,导致难以复用该对象


文章 PHP设计模式——中介者模式 转载需要注明出处
喜欢 (0)

您必须 登录 才能发表评论!