重学java23种设计模式(10)外观模式
2015-08-03 16:45
330 查看
跟着《软件秘笈---设计模式那点事》学习
定义:
外观模式(Facade Pattern),是软件工程中常用的一种软件设计模式。它为子系统中的一组接口提供一个统一的高层接口,使子系统更容易使用。外观模式通过一个外观接口读/写子系统中个借口的数据资源,而客户可以通过外观接口读取内部资源库,不予子系统产生交互。
角色:
1、外观巨蟹(Facade):构成系统内部复杂子系统的单一窗口,对系统外部提供更高一级的接口API
2、子系统角色:
3:客户端角色:不关心子系统角色
类图:
实例:
这模式不需要例子,一图胜百言。
分析:
设计原则:
1、迪米特法则----最少知识原则。
2、封装变化部分
使用场合:
(1)系统复杂度高,需要一个更高级别的简单接口简化子系统的操作时
(2)当使用端与实现类之间有太多相依性,需要降低使用端与子系统或子系统之间的耦合
(3)当子系统是相互 依存的
一句话总结:
用一个外观接口,封装各子系统接口的调用以及调用顺序。
Java SDK中的原型模式:
我认为任何一个框架比如Netty,都是外观模式的体现,其中
参考资料:
《软件秘笈---设计模式那点事》
定义:
外观模式(Facade Pattern),是软件工程中常用的一种软件设计模式。它为子系统中的一组接口提供一个统一的高层接口,使子系统更容易使用。外观模式通过一个外观接口读/写子系统中个借口的数据资源,而客户可以通过外观接口读取内部资源库,不予子系统产生交互。
角色:
1、外观巨蟹(Facade):构成系统内部复杂子系统的单一窗口,对系统外部提供更高一级的接口API
2、子系统角色:
3:客户端角色:不关心子系统角色
类图:
实例:
这模式不需要例子,一图胜百言。
分析:
设计原则:
1、迪米特法则----最少知识原则。
2、封装变化部分
使用场合:
(1)系统复杂度高,需要一个更高级别的简单接口简化子系统的操作时
(2)当使用端与实现类之间有太多相依性,需要降低使用端与子系统或子系统之间的耦合
(3)当子系统是相互 依存的
一句话总结:
用一个外观接口,封装各子系统接口的调用以及调用顺序。
Java SDK中的原型模式:
我认为任何一个框架比如Netty,都是外观模式的体现,其中
参考资料:
《软件秘笈---设计模式那点事》
相关文章推荐
- java poi导出execl类
- 学习笔记——Java核心技术之接口、继承与多态练习题
- java this & super
- JavaBean
- java ee 网页中图表的显示
- Java多线程
- maven入门笔记
- java容器练习题集合
- java工程如何导入文件和包
- JavaSrcipt快速入门(二)(2015.8.3)
- java 多线程------条件变量
- Math.Round
- java反射机制
- java小结
- java多线程同步
- Leetcode-8(Java) String to Integer (atoi)
- java多线程--障碍器
- springMail发送Text简单邮件的方法
- Java byte数组 转short int
- java可变参数