设计模式之门面模式(java实现)
小王今天挺勤奋,在认证的写着代码,这时领导电话来了,小王啊到我办公室来一趟。小王心里忐忑着走进了办公室。领导笑嘻嘻的告诉了小王一个好活,就是让小王组建一个项目组,做一个领导很重视的项目“飞天”,小王被任命为项目经理。
小王开了新的工作,首先要选择一个产品经理,再就是要招几个开发和测试工程师。我们分析下这个需求,设计类图如下:
设人生箴言计类图
通过分析,我们需要一个项目的抽象接口和对应的一个具体实现类,还有一个pm类来处理项目中的其他事情,代码实现如下:
飞天项目的设计代码
上面的例子就是一个门面设计模式,我们看看门面模式的定义:
门面模式(facade pattern):要求一个子系统的外部与其内部的通代工合同信必须通过一个统一的对象吉林旅游景点大全进行,门面模式提供一个高层的接口,使得子系统更易于使用。门面模式也叫做外观模式,通用类图如下:
门面模式的通用类图
其中的角色分析,
1、faceda门面角色:客户端和这个门面直春节手抄报大全超漂亮接交互,门面知道子系统的多有功能和责任。
2、subsystem子系统,可以用于一个或者多个子系统,子系统不知道门面的存在。
我们来写一下通用的代码,首先定义三个子系统subsystema,subsystemb和subsystemc
多个子系统
再定义一个门面类,对外提供接口:
门面类
门面模式的优缺点:
1、优点:减少系统之间的相互依赖,提高安全性和灵敏性。
2、缺点:不符开闭原则,对修改热的反义词是什么关闭,对扩展开放。
门面模式和代理模式的不同:
门面模式为子系统中的一组接口提供一个统一的高层接口,简化了系统的使用;
代理模式为其他对象提供一种代理以控制对这个对象的访问。
本文发布于:2023-04-05 15:42:16,感谢您对本站的认可!
本文链接:https://www.wtabcd.cn/fanwen/zuowen/8e72be1c346114a1f298892ee48dd936.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文word下载地址:门面模式和代理模式区别(2种模式对比分析).doc
本文 PDF 下载地址:门面模式和代理模式区别(2种模式对比分析).pdf
留言与评论(共有 0 条评论) |