设计模式学习-每日一记(2.外观模式)
2011-10-24 15:58
295 查看
外观模式
A.定义:
为子系统的一组接口提供一个一致的界面,外观模式提供一个高层接口,这个接口是子系统更加容易使用.
B.定义分析:
"为子系统的一组接口提供一个一致的界面,外观模式提供一个高层接口,这个接口是子系统更加容易使用." 做法是提供一个界面,实际就是一组接口.
"为子系统的一组接口提供一个一致的界面,外观模式提供一个高层接口,这个接口是子系统更加容易使用." 这一组接口是为子系统的一组接口提供的.那为什么不直接使用这个子系统的接口,而要重新定义一套,重复造轮子呢?考虑下列情况:
如果子系统中类很多,需要的功能接口分布在不同的类中.
如果子系统设计的领域知识比较晦涩抽象,且让所有开发人员理解和学习时间成本很高.
如果子系统的一些接口不符合常规,很难使用.
实际上,我们重新定义一组接口,这一组接口仅仅定义了我们需要的功能,且是把请求转发到了原来的子系统了里,但是这组接口已经变的很容易使用了.
C.问题
(1)这个模式的好处是什么?
隔离了子系统的复杂性;解耦客户代码和子系统;系统某个层次更加清晰好用
A.定义:
为子系统的一组接口提供一个一致的界面,外观模式提供一个高层接口,这个接口是子系统更加容易使用.
B.定义分析:
"为子系统的一组接口提供一个一致的界面,外观模式提供一个高层接口,这个接口是子系统更加容易使用." 做法是提供一个界面,实际就是一组接口.
"为子系统的一组接口提供一个一致的界面,外观模式提供一个高层接口,这个接口是子系统更加容易使用." 这一组接口是为子系统的一组接口提供的.那为什么不直接使用这个子系统的接口,而要重新定义一套,重复造轮子呢?考虑下列情况:
如果子系统中类很多,需要的功能接口分布在不同的类中.
如果子系统设计的领域知识比较晦涩抽象,且让所有开发人员理解和学习时间成本很高.
如果子系统的一些接口不符合常规,很难使用.
实际上,我们重新定义一组接口,这一组接口仅仅定义了我们需要的功能,且是把请求转发到了原来的子系统了里,但是这组接口已经变的很容易使用了.
C.问题
(1)这个模式的好处是什么?
隔离了子系统的复杂性;解耦客户代码和子系统;系统某个层次更加清晰好用
相关文章推荐
- 设计模式学习-每日一记(12.轻量模式)
- 设计模式学习-每日一记(5.创建者模式)
- 设计模式学习-每日一记(7.适配器模式)
- 设计模式学习-每日一记(23.责任链模式)
- 设计模式学习-每日一记(6.原型模式)
- 设计模式学习-每日一记(17.解释器模式)
- 设计模式学习-每日一记(8.桥接模式)
- 设计模式学习-每日一记(18.命令模式)
- 设计模式学习-每日一记(20.中介者模式)
- 设计模式学习-每日一记(9.装饰者模式)
- 设计模式学习-每日一记(13.策略模式)
- 设计模式学习-每日一记(14.观察者模式)
- 设计模式学习-每日一记(21.叠代器模式)
- 设计模式学习-每日一记(1.简单工厂模式)
- 设计模式学习-每日一记(15.状态模式)
- 设计模式学习-每日一记(3.工厂方法)
- 【每日一记】设计模式——外观模式
- 设计模式学习-每日一记(16.模板方法模式)
- 设计模式学习-每日一记(10.组合模式)
- 设计模式学习-每日一记(22.访问者模式)