第十三棵 外观模式
外观模式,其实大家很可能有意无意中已经多次使用过了。现在通用的三层架构都用过吧,是不是有人在开发过程中加入过第四层呢?由于一个模块处理的时候,可能要调用多个逻辑层,这样的话,UI上面就多出了很多业务逻辑代码。这时候有经验的人往往会定制第四层,外观层。将这些调用多个逻辑层的逻辑进行封装。这里就能够看出外观模式的意义了。外观模式,就是为了高一层的逻辑封装。简单三层结构中,数据层是最底层结构,基本是针对独立数据表进行操作。而逻辑层,是根据业务需要,通过调用多个数据层对象,来实现业务逻辑。这里的逻辑层,其实就是外观模式。将需要多个数据层对象调用逻辑进行封装,对客户端只提供一个接口即可。刚才说得第四层,是嵌套的外观模式,如果简单三层不能满足需要,界面层依然有很多逻辑代码,那么就可以在提出一个高级的外观层进行封装。总之目的要实现客户端调用的最简化。
概述
在软件开发系统中,客户程序经常会与复杂系统的内部子系统之间产生耦合,而导致客户程序随着子系统的变化而变化。那么如何简化客户程序与子系统之间的交互接口?如何将复杂系统的内部子系统与客户程序之间的依赖解耦?这就是要说的Façade 模式。
目的
其实就是业务逻辑的封装。
示例图
相信看到上图后,大家应该就基本明白了。下面举一个生活中的例子。
股票大家都知道吧,可能很多人还购买过。但是新人购买股票很容易赔钱,因为炒股票需要很多专业知识。于是就产生了基金公司这样一个中介机构。基金公司雇佣专业人员管理股票买卖,资金来源当然就是我们买家了。实际股票收益能够返还给我们,结构如下。
上述结构是不是就像极了MVC?
外观模式感觉没什么难度,就不添加代码示例了。
作者:王文斌
转载请注明出处
本文介绍了软件设计中的外观模式,探讨了其在系统架构中的作用及如何简化客户端与子系统间的交互接口,通过实例说明了该模式的应用场景。
2744

被折叠的 条评论
为什么被折叠?



