文档章节

中介者模式

KaronChen
 KaronChen
发布于 2015/08/30 17:19
字数 555
阅读 77
收藏 3

中介模式:

  1. 公开一个统一的接口,限制系统的不同部分可以通过该接口进行通信

  2. 系统不同部分不再显示的引用彼此

  3. 属于行为设计模式。

生活中例子:

  • 机场交通控制系统:机场控制塔(中介者)处理飞机的起飞和降落,因为所有通信(监听到或发出的通知)都是从飞机到控制塔,而不是飞机和飞机直接相互通信。

优点:

  • 能够将系统中对象或组件之间所需的通信渠道从多对多减少到多对一

缺点:

  1. 会导致性能下降,因为它们总是间接地进行通信;

  2. 会引入单一故障点

区别

  • 和中介者模式比较相似的有观察者模式外观模式,如下:

--- 中介者模式与观察者模式

  • 中介者模式严格限制对象间只能通过中介者模块进行通信对象之间不可通信);

  • 观察者模式中的通信方式是由观察者和发布者互连的方式决定,观察者之间可以相互通信一个观察者可能是另一个观察者的发布者)。

--- 中介者模式与外观模式

  • 中介者模块在它被模块显式引用的地方汇集这些模块之间的通信,是多向的

  • 外观模式仅仅是为模块或者系统定义一个简单的接口,没有任何额外的功能,系统中的其他模块不会直接关联外观,是单向的

代码例子:

  • 定义玩家和记分牌,玩家和记分牌之间不直接通信

  • 中介的业务:

  • 执行:

  • 上面例子的流程是这样的:按键告诉中介可以让玩家开始玩了,玩家收到通知后开始玩耍,然后告诉中介可以让分数牌可以更新分数了。

  • 更多例子待补充~~~~~~

一句话总结:

  • 租房子前,我们和中介联系,房东和中介联系,我们和房东之间无法联系。





© 著作权归作者所有

上一篇: 原型模式
下一篇: 外观模式
KaronChen
粉丝 8
博文 19
码字总数 9811
作品 0
广州
程序员
私信 提问

暂无文章

秒杀系统思路

业务分析 技术挑战 请求响应要快:无论成功失败,需要尽快返回给用户 架构设计   前端:静态化   站点层:限制请求数   服务层:乐观锁写缓存   数据库CAP:读写高可用,一致性,扩容...

雷开你的门
28分钟前
10
0
最全的教育行业大数据解决方案,个个针对痛点

大数据的悄然兴起也带动了教育行业的革新,移动教育、云课堂等的出现,使得教育行业再次成为了可以中长期保持高景气的行业。然而,初涉数据领域的教育行业同时也面临着相当大的难题,还需要更...

朕想上头条
32分钟前
7
0
预约模块设计分析

1.预约功能描述: 预约是小程序中常见的一种商品管理系统,商家可根据商品或服务的特性,灵活设置预约细节,为用户提供线上预约服务,如场地预约,商品预定等,实现高效经营。 预约场景: ...

鱼煎
35分钟前
5
0
阿里云日志服务构建网站实时分析大盘实战

场景分析 挖掘数据价值是当前企业级网站共同面临的问题。买买网是一个电商平台网站,每天拥有大量的用户访问和购买记录。为了引导用户直接消费,提升购买率和转化率,不同的用户类别需要推荐...

阿里云官方博客
36分钟前
5
0
TL665xF-EasyEVM开发板硬件处理器、NAND FLASH、RAM

广州创龙结合TI KeyStone系列多核架构TMS320C665x及Xilinx Artix-7系列FPGA设计的TL665xF-EasyEVM开发板是一款DSP+FPGA高速大数据采集处理平台,其底板采用沉金无铅工艺的6层板设计,适用于高...

Tronlong创龙
40分钟前
13
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部