00:02
外观模式的基本介绍我们来看一下,那既然我们要去使用外观模式解决前面问题,我们首先来看一下外观模式它的基本概念。外观模式呢叫facade,这个单词叫facade,也叫过程模式,就说如果你在别的书上看到说过程模式指的就是外观模式,那外观模式的核心思想是为子系统中的一组接口仔细为子系图中的一组接口提供一个一致的界面。此模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。有易用性,同时可以看出来外观模式呢,仍然是属于一种结构性的,对不对?那外观我模式通过定义一个一致接口以屏蔽内部子系统的细节,使得调用端只需跟这个接口发生调用,而无需关系子系统的内部细。那这样子我们来画一个外观模式的原理类图,然后把它的角色分析出来,大家就一目而了然,那同学们,我们画下,那打开我们这个eclips。
01:05
不给啊。那这个地方我们我们写个。点fac。是这样写的吧,Forad,那别写错了啊,For fac。CAD好,CAD for好,OK,那现在呢,我们先画这样一个原理图。来画出一个类图来描述一下它的核心思想,那核心思想是怎样的呢?首先有一个类,OK,这个类呢,我们把它称之为外观类。外观。外观类。OK,那么外观内下边呢?OK会有什么呢?好,会有它的一些子系统。比如说子系统一。这个子系统也是一个类了,那么有一个子系统,我们还有第二个子系统,因为子系统很会很多子系统,二子啊子。
02:04
系统。二当然还有子系统,三我们就画三个子系统就可以了。子系统。三。好的,那这个时候我们让这个子系统干什么呢?OK,聚合,大家看这个图是聚合到这边去,也就是说我们把子系统干什么,不是继承呢,是把聚合。就是我把子系统一,把子系统二,把子系统三聚合到我们外观类里面去。相当于被他统一管理,那我们的客户端怎么办呢?各位同学原先客户端注意听。我们原先的客户端呢,是这样去使用的,我们最初的方案是他去依赖它,他去依赖它,他去依赖它是不是很麻烦,因为你这样子子系统太多了,你客户端不够灵活,那现在变成什么样子呢?各位朋友,我们只需要让可能可能端去使用我们这个外观内就可以了。这样思路就变得比较清晰,这样思路就变得比较清晰,好,我把这个图呢给给大家,先拿到我们的幻灯片里面来。
03:07
也就是说我们这一个外观模式的类类图大概是这样子,我们在对他的角色进行一个简单的分析,来我们看一下,同样我们把这边设一个不同的颜色。好,我们设置一个不同的颜色好吧。纯色换一个这个颜色,我们来分析一下他的角色,首先我们看外观内在哪里呢?就是把它角色分析出来。就这面外观。外观模式的角色分析。OK,第一个,首先我们可以看到外观内,外观内。外观内,这个外观内呢,就是我们所说的first。就是他的名字的由来也是这样来的,First,那么他到底完成一个什么功能呢?注意听,他为注意听啊,他是为调用者。
04:04
他为这个调用调用端提供提供什么呀,提供统一的一个调用接口。OK,他提供统一调接口。那么外观内。外观内干什么呢?外观类知道他是他是很清楚的,他是知道什么呢?知道哪些。哪些子系统说他是很明白这个哪些子系统负责。他是知道负责什么呢,诶,他是负责。则这么写啊,负责。他是知道哪些子系统负责这个处理请求。就他来去搞定这个事情就行了,然后呢,从而从而干什么呢?从而将调用他要调用端的这个请求代理。代理。
05:00
代理给什么呢?给这个适当的。他给这个适当的什么呀,子系统对象,也就是说你这个客户端调用谁,你就找我,那么我这边有统一接口,我你要比如说你要开机或者要关机,你放心你找我,我帮你去调就可以了。有点像个代理,中间做了个代理,这种感觉,明白这意思吧,好,我把这个字体呢,稍微调小一点,接着我们继续来分析。我们继续来分析,那么第二点呢,我们还要分析了,他有个调用者。他有个调用者,这个调用者在我们这个图上就是C。他干什么呢?他是外观接口的调用者,外观接口OK接口的调用者。所以说它呢也是比较重要的,诶调用者。最后一个就是我们子系统,子系统的一个集合。从这里我们可以看子系统呢,不是只有一个,它有多个,是这样子吧,比如说我们对应的这个设备,或者我们的这个遥控器会很多,那怎么怎么整呢?它是它是指定,它是指它是指的什么呀?指模块或者或者什么子系统。
06:14
然后他要完成是怎么呢?它处理处理这个first。就是我们看到forca f CAD CAD,他要处理fair这个fora这个对象指派的任务。指派。的一个任务。也就是说它是什么呢?它是这个是功能的。他是功功能的实际提供者。OK,那说白了,这个地方就相当于做一个代理,说我帮你去调就完了,你不要直接去找。啊,我们找一个外观内外,外观内来帮我们调用子系统,你要干什么我帮你做,所以说真正的功能呢,仍然是在子系统这边帮我们完成的,所以这我写的它是指模块或者子系统。
07:08
但也一一般是以类形式来体现的。处理first的对象指派的任务,它是功能的实际提供者。这个实际。好,同学们,那关于我们这个外观模式的基本概念和它这个类图呢,我们就聊到这儿,那下面我们就要准备用外观模式来改写。我们前面这个家庭影院的管理,OK,好,下一讲我们来来具体的完成。
我来说两句