设计模式之-外观模式

Posted sw85642734

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了设计模式之-外观模式相关的知识,希望对你有一定的参考价值。

 

转自大话设计模式:

本例中主要是用 A购买牛市中的股票反而亏钱的案例。 因为A对股票并不熟悉,自己去学习又会花很大的成本,还很有可能亏钱。 而如果A去购买基金,基金管理员会用很多人的共同资金去投资不同的股票等,因为基金管理员是专业的,所以最后投资的人都会获得收益。而A这些外行完全不需要知道基金管理员做了什么。只需要调用基金管理员的购买和卖出即可。

part1:出版 投资人不懂股票国债房产,自己投资

技术分享图片技术分享图片

技术分享图片技术分享图片

测试:

技术分享图片

因为投资人不懂,所以盈亏都要看运气。现在购买由基金管理人来管理的基金。基金管理人可以同时购买多支股票,基本可以保证盈利。投资人在不懂基金的情况下也可以直接购买基金,因为投资人知道这个是肯定赚钱的

 

技术分享图片

测试:

技术分享图片

 

part3:外观模式结构

技术分享图片

技术分享图片技术分享图片技术分享图片技术分享图片

测试:

技术分享图片

 

外观模式:为子系统中的一组接口提供一个一致的界面,此模式定义了一个高层的接口,这个接口使得这一子系统更容易使用。

使用地方:

1、设计初期、有意识的将2个不同的层分离,曾与层之间建立外观facade

2、开发阶段,因为子系统往往不断重构使用会越来越复杂,使用facade可以提供一个简单的接口,减少他们之间的依赖。

3、维护大型系统遗留项目,并且大型系统中的功能还必须继续使用,可以在老系统中提供facade的接口,供新系统调用,新系统不需要了解老系统内部的结构层次,由老系统维护人员重新编写facade接口供系统调用即可。

 

个人总结:

比如我们目前使用的系统...

web--> serviceapi --> service --> dao --> common --> model

如果我们要对外提供dubbo服务,那么又不能直接把我们的service对外提供的时候,可以提供facade接口,外部依赖我们的facade,我们在facade对代码进行实现即可。

 

以上是关于设计模式之-外观模式的主要内容,如果未能解决你的问题,请参考以下文章

设计模式之外观模式

设计模式之外观模式

设计模式之- 外观模式(Facade Pattern)

设计模式之外观模式

JAVA设计模式之外观模式

设计模式之外观模式案例详解