• 设计模式:门面模式


    定义

    门面模式:又叫做外观模式,提供一个统一的接口,来访问子系统的一群接口。主要特征是定义一个高层接口,让子系统更容易使用,属于结构型设计模式。

    使用场景:

    • 为一个复杂模块或者子系统提供一个简洁的供外界访问的接口。
    • 希望提高子系统的独立性。
    • 提供高层接口,隔离客户端和子系统直接交互,预防代码污染

    其实在日常编码中,我们都有意无意地大量使用门面模式。

    通用写法

    代码很简单。

    //A子系统
    public class SubSystemA {
        public void doA(){
            System.out.println("SubSystemA doA");
        }
    }
    //B子系统
    public class SubSystemB {
        public void doB(){
            System.out.println("SubSystemA doB");
        }
    }
    //门面角色
    public class Facade {
        SubSystemA systemA = new SubSystemA();
        SubSystemB systemB = new SubSystemB();
    
        public void doA(){
            systemA.doA();
        }
    
        public void doB(){
            systemB.doB();
        }
    }
    

    我们客户端不需要知道A子系统和B子系统,只需要有门面角色就行了,使用门面角色去调用相关子系统。

    public class Client {
        public static Facade facade = new Facade();
    
        public static void main(String[] args) {
            facade.doA();
            facade.doB();
        }
    }
    

    类图:

    image-20201226222412490

  • 相关阅读:
    我们的微信小程序开发
    node.js的模块引用
    关于 node.js的request事件
    关于 node.js 小插曲
    发给
    Kotlin 委托(1)类委托、变量委托注意事项
    Kotlin 扩展
    关于dex 64K 引用限制
    c++新特性实验(5)声明与定义:属性列表(C++11 起)
    apk反编译(6)用ProGuard 混淆、压缩代码,压缩资源。
  • 原文地址:https://www.cnblogs.com/wwjj4811/p/14194724.html
Copyright © 2020-2023  润新知