对象结构型模式——外观模式(Pacade Pattern)

  • 定义:
    提供一个用来访问子系统一群接口的接口,该接口让子系统更容易使用。
  • 概述:
    外观模式的目的不是定义一个具有新功能的接口,而是提供一个接口让客户端减少与子系统多个模块的交互,松散耦合,让子系统更加容易使用,但是你也可以不用该接口而直接访问子系统。
  • 实例(Kotlin语言)
    模块A的接口以及实现
//接口
interface AModuleApi {
    fun testA()
}
//实现
class AModuleImpl:AModuleApi {
    override fun testA() {
        println("A module api ...")
    }
}

模块B的接口及实现

//接口
interface BModuleApi {
    fun testB()
}
//实现
class BModuleImpl:BModuleApi {
    override fun testB() {
        println("B module api ...")
    }
}

外观类

class Facade {
    fun test(): Unit {
        val aModuleImpl: AModuleApi = AModuleImpl()
        aModuleImpl.testA()
        val bModuleImpl: BModuleApi = BModuleImpl()
        bModuleImpl.testB()
    }
}

测试及结果

//测试
    //外观模式(Facade Pattern)
    Facade().test()
//结果
A module api ...
B module api ...

Process finished with exit code 0
  • 类图
    对象结构型模式——外观模式(Pacade Pattern)_第1张图片

如有错误,请留言更正,或进580725421群讨论,以免误导其他开发者!!!

你可能感兴趣的:(oo设计模式)