🗒️Day37【概念解析】外观模式
00 分钟
2023-10-28
2023-10-28
type
status
date
slug
summary
tags
category
icon
password

整理定义

中文名称:外观模式
英文名称:facade pattern
出处
定义
中国大百科全书
为一个子系统的所有接口对外提供一致的高层访问接口,使该子系统更便于使用的一种设计模式。
设计模式
外观模式是一种结构型设计模式, 能为程序库、 框架或其他复杂类提供一个简单的接口。
百度百科
Facade(外观)模式为子系统中的各类(或结构与方法)提供一个简明一致的界面,隐藏子系统的复杂性,使子系统更加容易使用。
维基百科
外观模式(也拼写为 façade)是面向对象编程中常用的软件设计模式。 与建筑中的外观类似,外观是一个充当前端界面的对象,掩盖了更复杂的底层或结构代码。ode

复述展开

What is facade pattern?

📌
外观模式使一种结构型对象设计模式。它通过为对象的所有接口对外提供一致的高层次访问结构,使子系统更容易使用。它可以掩藏更复杂的底层代码,隐藏子系统的复杂性。
 

外观模式结构

notion image
  1. 外观 (Facade) 提供了一种访问特定子系统功能的便捷方式, 其了解如何重定向客户端请求, 知晓如何操作一切活动部件。
  1. 创建附加外观 (Additional Facade) 类可以避免多种不相关的功能污染单一外观, 使其变成又一个复杂结构。 客户端和其他外观都可使用附加外观。
  1. 复杂子系统 (Complex Subsystem) 由数十个不同对象构成。 如果要用这些对象完成有意义的工作, 你必须深入了解子系统的实现细节, 比如按照正确顺序初始化对象和为其提供正确格式的数据。
    1. 子系统类不会意识到外观的存在, 它们在系统内运作并且相互之间可直接进行交互。
  1. 客户端 (Client) 使用外观代替对子系统对象的直接调用。

优缺点

优点:
  • 你可以让自己的代码独立于复杂子系统。
缺点:
  • 外观可能成为与程序中所有类都耦合的上帝对象

理解体会

通常外观模式使为了使系统更加简单,所以一个对象即可。
外观模式需要对系统对象的所有接口进行作用,可能会增加耦合度。
📌
快速跳转链接
【概念解析】启动
【概念解析】Day 1 - 10
【概念解析】Day 11 - 20
【概念解析】Day 21 - 30
【概念解析】Day 31 - 40
【概念解析】Day 41 - 50
【概念解析】Day 51 - 60
【概念解析】Day 61 - 70
【概念解析】Day 71 - 80
【概念解析】Day 81 - 90
 
上一篇
Day38 【概念解析】享元模式
下一篇
Day36【概念解析】装饰模式

评论
Loading...