00:02
中介者模式的注事我们来梳理一下,那么中介者模式的注意事项呢?有这么几点,多个类相互耦合,会形成一个网状结构是吧。这是我们。前面所说的子系统,如果是它们之间相互调用,就会形成一个网状,那么使用中介子呢?将网状结构分离为新型结构。那进行了解耦。那么同时呢,它也减少减少了肋间的依赖,降低耦合,符合了我们迪米特这样一个法则。中介者呢,承担了较多的责任,大家可以看到在我们写的那一个concrete。Mediator里面呢,有一个get message,那里面的代码会比较多,所以说中介者在这里面,他的业务逻辑复杂度会提升。因此我们说一旦中介者出了问题,整个系统呢就会受到影响。因此这个地方大家一定要特别小心,中介者这块要写代码的时候一定要谨慎,如果设计不当,中介者本身会变得过于复杂,这样在实际中要注意,特别要注意这一点。好,现在呢,我们把注意事项说完了过后,我们简单的来把中介者模式的内容进行一个梳理。
01:16
好,我们插入一个分页,这边讲的是中介者模式。中介者模式。好看一下。那中间的这个模式我们怎么说的呢?仍然是先提出了一个需求,对不对?提出个需求说我们现在呢,要去管理一个智能家庭,那智能家庭里面呢,我们去看电视会有一些流程,对吧?当然这里面只是举了一个案例而已。他可能还有其他的一些操作,也会涉及到下面的一些设备的协同工作的问题,那如果说我们站在传统的角度来看呢,我们可能会这样去设计,是不是我们会怎么样呢?我们去让他们之间,就是我们各个设备之间相互的调用。
02:05
比如说你这个闹钟响了,发一个消息给我们的咖啡机,咖啡机呢,工作以后又发消息给TV,或者是我们的窗帘,这是我们最容易想到的嘛,按顺序来想,就这样想的,但是这种方式呢,存在的问题它也是比较明显的,于是乎我们分析了。这种传统方式存在的问题主要是会形成一个网状,对不对,那这样子呢。我们可以看到他的问题比较明显,在这里我们总结了几句话。对,我们统计了几句话,哪里呢,就是。呃,各个电器对象,对象彼此联系,你中有我,我中有你,有有你,不利于松耦合。对吧,所以说呃,我们这样就处理起来会很麻烦,会很麻烦,那这样子我们就解决了,我们提出一个新的方式,就是中介者模式来解决,那这样是中介者模式来解决呢?我们先对中介者模式做了一个基本的介绍,就是何为中介者模式。
03:09
我们提出了三点概念。对吧,好,我们说中介者模式呢,呃,它是用中介者来封装一系列的对对象交互啊,其实说白了就是减少他们的呃,就是减少这个对象之间的呃,一个相互引用,使其松耦合。耦合松散,对,这是我们追求的一个目标。好,呃,那这样子说完了以后呢,我们怎么样,我们是不是就呃画了一下中介者的原理类图,然后对中介者模式的他的各个角色做了一些简单的分析。好,我们把它拿过来。好,我们把它拿过来好。这是中介者模式的原理类图。然后这边是对它的原理类图的一个角色的说明。
04:01
那这个图呢,我们从eclips里面这边再拷一份,好,这边会比较清晰一点,这是终结者模式。是这个图吗?啊,不,这个图是。是哪个图啊是。是不是这个图。啊,也不是,是这个图,原理图是它。对吧,我们的原理图是这个smart,就是智能家庭是上面那个类图。好,这是我们的原理类图,我放到这里来。那说完这个原理类图以后呢,我们对中介者模式就有一个基本的认识,于是乎我们就使用中介者。来完成。我们这个案例就是智能家庭。的一个管理是不是这样这样子的好放到这。那我们来看看怎么实现的。我们分成了三步来走,是不是分成了三步来走?把这个放一下,这是我们的第一个,诶好这个。给一个一好,这边呢,我们给个二和三。
05:01
好可以了,那具体来说我们画的这一个。类图是怎么样子的呢?大家可以看到是在这个smart house里面画的。OK smart的号里面花的。好,这个图呢,比较清晰的把我们的思路分析出来了。那有了有了这个思路以后,我们再去用代码实现呢,就比较轻松了,来把代码呢。一起放过来就行了,好吧,Smart house,诶,这边这代码有了,我就直接从这粘一份过来。啊,当然我还是粘一个新的吧,因为我这个E写写的代码呢,里面是有是有注释的,所以说我还是粘这边的,诶这边是怎么回事。从这再来重新复制一下smart house,因为这里面有注释,相应的注释。压一个包包。对,我们要一个包包,Smart house。然后呢,把这个给大家放到我们的笔记中。
06:00
可以了,最后把这个案例做完了以后呢,我们说一下中介者他的使用注意事项,就是主要主要在哪里需要同学们注意呢?就是我们在使用中介者模式的时候,大家一定要注意,因为你使用使用过程中中介者承担了太多的责任,所以说中介者一旦出了问题呢,整个系统都会受影响。因此我们在写中介者模式的这个中介者一定要认真的去写,就代码一定要一定要注意不要出现什么错误,好吧,就中介因为他是一个成。承接就是它起到一个联系的作用嘛,他把我们下面的各个。各个那个具体的同事类都是嗯,由他来关联的,因此中介者他就变得比较重要了。好的,那关于中介者具体的讲解内容的梳理,我们就聊到这里。
我来说两句