中介者模式-用一个中介对象封装一系列的对象交互。使各个对象不能显式调用,从而使其耦合松散...

一: 场景说明

大家知道计算机的构成,有cpu、显卡,内存,硬盘,光驱,声卡,网卡,主板组成,

如果你自己diy过计算机你很清楚,计算机很多硬件都是安插在主板上的,是通过主板实现互相的交互,如图:

如果没有主板,他们之间能交互通信吗

你会很明显地发现,没有主板,各硬件之间的交互乱作一团,乃至接口匹配十分复杂!

必然的结果,软件工程是不允许这样高耦合的设计的!

这里的主板,就是一个中介。

二:实际场景举例

我们使用电脑看dvd,(你想看什么内容,随你,岛国的xx,也可以哦)

分析我们有程序实现的步骤:

1)插上光驱,然后告诉主板,光驱准备就绪

2)主板得到光驱数据,把这些数据交给cpu解析处理

3)cpu把数据解析成视频数据和音频数据,通知主板

4)主板得到cpu处理后的数据,分别交给显卡和声卡,分别播放视频和声音

三:中介者模式实现需求

中介模式结构图:


四:代码太长 ,此处省略。

五:客户端测试:(通过客户端代码,你能推测出中介者的代码实现!)

转载于:https://my.oschina.net/dyyweb/blog/656734