74 lines
1.8 KiB
Markdown
74 lines
1.8 KiB
Markdown
---
|
||
nav:
|
||
title: 前端
|
||
path: /fea
|
||
group:
|
||
title: 💊 设计模式
|
||
order: 1
|
||
---
|
||
|
||
## 关于
|
||
|
||
学习设计模式,是为了让你的代码减少亢余,能用健壮的代码去解决问题,提升可维护性与拓展性。
|
||
|
||
**想做靠谱开发,先学设计模式**
|
||
|
||
### 最终目标
|
||
|
||
1. 充分理解前端设计模式的核心思想和基本理念,在具体的场景中掌握抽象的设计原则
|
||
2. 会写代码,会写好代码
|
||
3. 会面试,能言之有物
|
||
|
||
## SOLID 设计原则
|
||
|
||
设计模式需要遵循五个原则,被称为 SOLID 原则,内容分别是:
|
||
|
||
- 单一功能原则(Single Responsibility Principle)【_重点_】
|
||
- 开放封闭原则(Opened Closed Principle)【_重点_】
|
||
- 里式替换原则(Liskov Substitution Principle)
|
||
- 接口隔离原则(Interface Segregation Principle)
|
||
- 依赖反转原则(Dependency Inversion Principle)
|
||
|
||
> 将变与不变分离,确保变化的部分灵活,不变的部分稳定。
|
||
|
||
## 设计模式分类(早期 22 种,新增 1 种)
|
||
|
||
### 创建型
|
||
|
||
创建型模式封装了创建对象过程中的变化,它做的事情就是将创建对象的过程抽离;
|
||
|
||
- 单例模式
|
||
- 原型模式
|
||
- 构造器模式
|
||
- 工厂模式
|
||
- 抽象工厂模式
|
||
- 建造者(新)
|
||
|
||
### 结构型
|
||
|
||
结构型模式封装的是对象之间组合方式的变化,目的在于灵活地表达对象间的配合与依赖关系;
|
||
|
||
- 桥接模式
|
||
- 外观模式
|
||
- 组合模式
|
||
- 装饰器模式
|
||
- 适配器模式
|
||
- 代理模式
|
||
- 享元模式
|
||
|
||
### 行为型
|
||
|
||
而行为型模式则将是对象千变万化的行为进行抽离,确保我们能够更安全、更方便地对行为进行更改
|
||
|
||
- 迭代器模式
|
||
- 解释器模式
|
||
- 观察者模式
|
||
- 中介者模式
|
||
- 访问者模式
|
||
- 状态模式
|
||
- 备忘录模式
|
||
- 策略模式
|
||
- 模板方法模式
|
||
- 职责链模式
|
||
- 命令模式
|