美文网首页
设计模式整理—外观模式

设计模式整理—外观模式

作者: 我就是小政政 | 来源:发表于2020-07-08 15:30 被阅读0次
  • 基本介绍
  1. 外观模式(Facade),也叫“过程模式:外观模式为子系统中的一组接口提供一个一致的界面,此模式定义了一个高层接口,这个接口使得这一子系统更加容易使用
  2. 外观模式通过定义一个一致的接口,用以屏蔽内部子系统的细节,使得调用端只需跟这个接口发生调用,而无需关心这个子系统的内部细节
    理解:体现了接口隔离原则,客户端不应该依赖它不需要的接口。对客户端与各个子系统进行解耦。合理使用外观模式可以帮助更好地划分访问层次(可用于分层设计)。或者一些大型系统难以维护、扩展时提供一个遗留系统的比较清晰简单的接口。
  • 类图


    image.png
  • 代码示例

package facade
import "fmt"

// 原A业务模块
type A interface {
    running() string
}
type AImpl struct {}
func (A *AImpl) running() string {
    return "Module A is running"
}
func NewA() A  {
    return new(AImpl)
}

// 原B业务模块
type B interface {
    running() string
}
type BImpl struct {}
func (B *BImpl) running() string {
    return "Module B is running"
}
func NewB() B  {
    return new(BImpl)
}

// facade 接口
type Api interface {
    running() string
}
type apiImpl struct {
    a A
    b B
}
func (a *apiImpl) running() string {
    return fmt.Sprintf("%v\n%v",a.a.running(),a.b.running())
}
func NewApi() Api  {
    return &apiImpl{a: NewA(), b: NewB()}
}

相关文章

  • 设计模式整理—外观模式

    基本介绍 外观模式(Facade),也叫“过程模式:外观模式为子系统中的一组接口提供一个一致的界面,此模式定义了一...

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

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

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

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

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

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

  • 了解外观模式

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

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

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

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

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

  • 外观模式(Facede)

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

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

    1、外观模式(Facade):也叫门面模式,为子系统中的一组接口提供一个一致的界面,此模式定义了一个高层接口,这个...

  • 设计模式——外观模式

    阎宏博士的《JAVA与模式》一书中开头是这样描述外观(Facade)模式的:门面模式是对象的结构模式,外部与一个子...

网友评论

      本文标题:设计模式整理—外观模式

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