每一个模式描述了一个在我们周围不断重复发生的问题,以及该问题的解决方案的核心。这样,你就能一次又一次地使用该方案而不必做重复劳动。 —— Christopher Alexander

SOLID设计原则

设计原则是设计模式的指导理论,它可以帮助我们规避不良的软件设计。SOLID 指代的五个基本原则分别是:

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

在 JavaScript 设计模式中,主要用到的设计模式基本都围绕“单一功能”和“开放封闭”这两个原则来展开。

为什么需要设计模式?

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

1. 设计模式之道 - 图1