美文网首页程序员
设计模式之外观模式

设计模式之外观模式

作者: 无聊到学习 | 来源:发表于2020-09-29 00:04 被阅读0次

一、简介

 它是一种结构型模式,它为子系统的众多接口提供统一的高层接口,使子系统更容易使用。也就是底层有很多基础功能,但有时为了满足不同的业务需求,需要对其中不同的功能进行组合。

 这时我们就可以定义一个中间层,用来保存不同的功能组合,每个功能组合相当于一个高层接口,可以方便调用层调用。

 外观模式就有点类似于我们点肯德基时的一些套餐,每个套餐都是由不同的基础菜品组成,通过合理搭配出不同的套餐,便于顾客选择。

二、应用场景

 在我们实际工作中,外观模式其实也是经常被用到。就比如当我们维护一段旧的代码时,可以将原本比较乱的一些业务逻辑整合出一个新的接口,便于调用
 另外,在构建新项目时,也可以使用“外观”模式,这样既可以保持底层功能的细粒度,又可以为调用者提供方便。

三、举例

public class 外观模式 {

    public static void main(String[] args) {
        Facade facade=new Facade();
        //通过外观模式调用组合接口A
        facade.doThings1();
        //通过外观模式调用组合接口B
        facade.doThings2();

    }

}
//外观类,相当于中间层
class Facade{
    public void doThings1(){//相当于一个高层接口
        SubSystemA a=new SubSystemA();
        SubSystemB b=new SubSystemB();
        a.methodA();
        b.methodB();
    }
    public void doThings2(){
        SubSystemA a=new SubSystemA();
        SubSystemC c=new SubSystemC();
        a.methodA();
        c.methodC();
    }
}
//子系统类,一个类最好只负责一类事情,使其满足单一职责原则
class SubSystemA{
    public void methodA(){
        System.out.println("执行方法A");
    }
}
class SubSystemB{
    public void methodB(){
        System.out.println("执行方法B");
    }
}
class SubSystemC{
    public void methodC(){
        System.out.println("执行方法C");
    }
}

四、参考链接

漫画:设计模式之 “外观模式”

相关文章

  • 设计模式之 外观模式

    概述 UML类图 代码栗子 总结 概述概念 外观模式又叫做门面模式,提供一个更方便,高层接口,使用一致性的界面使得...

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

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

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

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

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

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

  • 了解外观模式

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

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

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

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

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

  • Java设计模式之——外观模式

    前言 在简述外观模式前,先看个生活中的例子: 程序员小明到了结婚的年龄,但是由于程序员对于泡妹子这件事来说,咳咳,...

  • 设计模式之七——外观模式

    原文传送门 1 介绍 外观模式又称为门面模式,它是一种对象结构型模式。外观模式是迪米特法则的一种具体实现,通过引入...

  • 外观模式(Facede)

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

网友评论

    本文标题:设计模式之外观模式

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