美文网首页java设计模式笔记
设计模式十一--外观模式

设计模式十一--外观模式

作者: 朽木亦自雕 | 来源:发表于2018-11-09 11:39 被阅读9次

定义

要求一个子系统的外部预期内部的通信必须通过一个统一的对象进行。外观模式提供高层次的接口,使得子系统更易使用。

角色

1:外观角色(Facade)
客户端可以调用该角色的方法,该角色知晓相关子系统的功能和责任,正常情况下,本角色将所有从客户端发来的请求为派到相应的子系统,该角色没有实际的业务逻辑,只是一个委托类。

public class ClassA{
  public void methodA(){}
}
public class ClassB(){
  public void methodB(){}
}
public class ClassC(){
  public void methodC(){}
}

2:子系统角色(SubSystem)可以同时有一个或者多个子系统,每一个子系统都不是一个单独的类,而是一个类的集合,子系统不知道外观角色的存在,对于子系统而言,外观角色仅仅是另外一个客户端而已。

public class Facade{
  private ClassA a = new ClassA();
  private ClassB b = new ClassB();
  private ClassC c = new ClassC();
  public void methodA(){
    a.methodA();
  }
  public void methodB (){
    b.methodB();
  }
  public void methodC(){
    c.methodC();
  }
}

优点

1:减少系统的相互依赖型,所有的依赖都市对Facade的依赖,与子系统无关
2:提高灵活性,不管子系统内部如何变化,只要不影响Facade对象,任何活动都是自由的
3:提高安全性,Facade中未提供的方法,外界就无法访问,提高系统安全性。

参考资料:设计模式(java)

相关文章

  • 设计模式十一--外观模式

    定义 要求一个子系统的外部预期内部的通信必须通过一个统一的对象进行。外观模式提供高层次的接口,使得子系统更易使用。...

  • 设计模式(十一)外观(门面)模式

    1、概述 外观模式是一种结构型设计模式, 能为程序库、 框架或其他复杂类提供一个简单的接口。 避免多种不相关的功能...

  • Android设计模式——外观模式(七大结构型)

    1.外观模式介绍 外观模式(Facade Pattern),是七大结构型设计模式之一。 外观模式运...

  • 设计模式[9]-外观模式-Facade Pattern

    1. 外观模式 外观模式(Facade Pattern),又称为门面模式,是非常常用的结构性设计模式。外观模式使得...

  • java设计模式-外观模式(Facade)

    外观模式,属于结构性模式。属于设计模式里面比较简单的设计模式,本人认为是最简单的设计模式。 所谓外观,就是我们能看...

  • 了解外观模式

    java 设计模式 ------外观模式 Java中一共有23种设计模式,每种设计模式各有特...

  • 设计模式之-4.外观模式

    每看一次设计模式,感觉每一个设计模式看起来是那么简单,对于外观模式我的理解就是外观模式:外观模式,这个名字起得不怎...

  • 设计模式详解——外观模式

    本篇文章介绍一种设计模式——外观模式。本篇文章内容参考《JAVA与模式》之门面模式,外观模式,深入浅出外观模式(二...

  • iOS 设计模式之十一(外观模式)

    一、概念 1、外观模式的动机 ​ 在外地工作的人经常搓馆子,在饭店吃饭和在家里吃饭的区别:如果在家里做饭,你需要...

  • 外观模式(Facede)

    本文参考自: 《JAVA设计模式》之外观模式(Facade) 1. 作用 外观模式也叫门面模式,门面模式是对象的结...

网友评论

    本文标题:设计模式十一--外观模式

    本文链接:https://www.haomeiwen.com/subject/bemnxqtx.html