天天看点

第十二章 牛市股票还亏钱—外观模式

仅仅是个人学习笔记,不具备参考价值

定义

外观模式(Facade,也叫做门面模式):为子系统中的一组接口提供一个一致的界面,此模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。个人的理解就是:将复杂和繁琐的调用封装在一个类里,这个类指的就是定义中的高层接口,对外提供了一个简单的接口。整体看起来更容易使用,结构也更清晰。

类图

第十二章 牛市股票还亏钱—外观模式

何时使用外观模式

分别从设计、开发、维护阶段说明如果使用外观模式。 首先,在设计阶段,就应该有意识的将不同的层面分类出来。比如经典的三层架构,层与层之间建立Facade,这样可以降低层与层之间的耦合。 其次,在开发阶段,往往因为不断的重构演化而变得越来越复杂,大多数的模式也会产生很多很小的类,这本事好使,但是给调用它们的用户带来了困难,这是就可以增加一个Facade类,提供一个简单的接口,减少调用的用户和子系统的依赖。 再次,在维护阶段,在维护一个大型系统时,可能这个系统已经很难扩展和维护,但新功能依赖系统中原有的模块,需要和原有模块对接,这时候可以建立一个Facade,来提供一个比较清晰简单的接口,供新模块使用,减少对原有模块的依赖。 第三,

举个例子,例如员工离职应该在OA中注销该员工,我们需要将多个表的员工状态设置为注销状态,这些update操作分布在Dao的各个类中,这时我们就可以在Dao层创建一个门面类,将分布在各个Dao类中update操作封装在门面类中,对业务逻辑成提供一个简单、统一的接口(或者说调用方式)。

继续阅读