门面模式:也叫外观模式。为子系统中的一组接口提供一个一致的界面,Facade模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。
1.当你要为一个复杂子系统提供一个简单接口时。子系统往往因为不断演化而变得越来越
复杂。大多数模式使用时都会产生更多更小的类。这使得子系统更具可重用性,也更容
易对子系统进行定制,但这也给那些不需要定制子系统的用户带来一些使用上的困难。
Facade可以提供一个简单的缺省视图,这一视图对大多数用户来说已经足够,而那些需
要更多的可定制性的用户可以越过facade层。
2.客户程序与抽象类的实现部分之间存在着很大的依赖性。引入facade将这个子系统与客
户以及其他的子系统分离,可以提高子系统的独立性和可移植性。
3.当你需要构建一个层次结构的子系统时,使用facade模式定义子系统中每层的入口点。
如果子系统之间是相互依赖的,你可以让它们仅通过facade进行通讯,从而简化了它们
之间的依赖关系。
code:
门面类:
public class Facade {
ServiceA sa;
ServiceB sb;
public Facade() {
sa = new ServiceAImpl();
sb = new ServiceBImpl();
}
public void method() {
sa.methodA();
sb.methodB();
}
}
服务A接口及实现类:
public interface ServiceA{
public void methodA();
}
public class ServiceAImpl implements ServiceA {
public void methodA() {
System.out.println("这是服务A");
}
}
服务B接口及实现类:
public interface ServiceB{
public void methodB();
}
public class ServiceAImpl implements ServiceB {
public void methodB() {
System.out.println("这是服务B");
}
}
分享到:
相关推荐
23种设计模式--门面模式
外观(Facade)模式又叫作门面模式,是一种通过为多个复杂的子系统提供一个一致的接口,而使这些子系统更加容易被访问的模式。该模式对外有一个统一接口,外部应用程序不用关心内部子系统的具体细节,这样会大大降低...
门面模式门面模式
门面模式郭嘉模式定义:为子系统中的一组接口提供一个一致的接口,Facade 模式定义了一个高层接口,这个接口使得这一子系统更加容易使用案例:* @author
java设计模式,设计模式公司出品。策略模式,代理模式,单例模式,多例模式,工厂模式,门面模式等。
门面模式门面模式门面模式
什么是门面模式(Facade) 外部与一个子系统的通信必须通过一个统一的门面对象进行。这就是门面模式。 门面模式的结构 涉及两个角色: 门面角色:客户端可以调用这个角色的方法。此角色知道子系统的功能和责任。在...
门面模式门面模式门面模式
设计模式之门面模式,最容易理解和上手的实例,值得学习
设计模式之门面模式(Facade模式),介绍门面模式,实际例子分析,代码讲解等
设计模式C++学习之门面模式(Facade)
门面模式的Java实现版本和UML类设计图
开发中常见一种模式之一,在简化其开发步骤,完成同样的工作开发中常见一种模式之一,在简化其开发步骤,完成同样的工作隐藏>>
第1章 绪论 ... 第13章 应用门面 第14章 类别模型模式——设计模板 第15章 关联模式 第16章 后记 第3部分 附录 附录A 技术和符号 参考书目 附录B 模式表 索引 附注
C++设计模式课件14_Facade_门面模式.pdf
这是设计模式实训教程(第2版)相关是课程实验,主要有两个实验门面和代理
EJB的经典模式——门面模式EJB的经典模式——门面模式
用Java实现的门面模式,有源代码以及视频讲解。
C++实验,可以参考下哦 使用了链表和堆等 你可以拿去参考下
Android也架构之四:门面模式解析获取的html代码 文章详细地址: http://blog.csdn.net/michael_yy/article/details/7965168