今天开始来学习JavaScript常见的设计模式,其实设计模式和算法一样,是脱离语言的一种通用性经验性的思想。前端程序员同样是软件工程师,需要扎实的专业基础,而设计模式也是计算机重要专业基础之一。

# 什么是设计模式

设计模式就是在软件设计过程中,针对特定问题的简洁而优雅的解决方案

image.png

在开发业务代码时,面临着各种各样不同的需要,不同的情况会总结出不同的解决方案。我们可以将这些经验总结起来,合理运用到不同的问题中,从而可以使用通用的方案来解决问题。简单点可以将设计模式理解成在编写代码时的一些小套路,小技巧。

设计模式具有SOLID五大设计原则

  • 单一功能原则(Single Responsibility Principle):一个程序只做好一件事
  • 开放封闭原则(Opened Closed Principle):对拓展开放,对修改封闭
  • 里式替换原则(Liskov Substitution Principle):子类能覆盖父类,并能出现在父类出现的地方
  • 接口隔离原则(Interface Segregation Principle):保持接口的单一独立
  • 依赖反转原则(Dependency Inversion Principle):使用方法只关注接口而不关注具体类的实现

image.png

前端开发使用JavaScript,我们应该重点关注前两个原则也就是单一功能原则开放封闭原则

# 为什么需要设计模式

为什么需要设计模式,也就是学习与使用设计模式可以带来哪些好处。

正是因为现在的业务越来越庞大,而且还需要不断的迭代与更新,所以我们在编写代码的时候要考虑代码的可读性、拓展性、复用性和可靠性。

  1. 易读性:能够提升代码的可读性,提升后续开发效率
  2. 拓展性:对代码解耦,能很好地增强代码的易修改性和拓展性
  3. 复用性:可以重用已有的解决方案,无需再重复相同工作
  4. 可靠性:能够增加系统的健壮性,使代码编写真正工程化

image.png

# 设计模式的分类

从意图上区分,可以将设计模式分别被划分为创建型模式、结构型模式和行为型模式

  • 创建型模式的目的就是封装创建对象的变化
  • 结构型模式封装的是对象之间的组合关系
  • 行为型模式封装的是对象的行为变化。

# JavaScript常见设计模式

我们常常能听到23种设计模式,今天跟着字节跳动的讲师,先来学习JavaScript常见的十种设计模式:

image.png

上次更新: 2022/4/18 18:10:13