【吃透】JS设计模式(Design pattern)

大家好!我是 代码诗人_,今天咱们来谈谈js中的设计模式。

一、为什么会有设计模式这个概念

如果你需要一种模式,那一定是哪里出了问题。编程语言没有十全十美的,因为其的天生缺陷,所以不得不去寻求和总结一种通用的解决方案,至此就衍生出了这种通用的解决方法——设计模式(Design pattern),故:设计模式 是解决软件开发某些特定问题而提出的一些解决方案也可以理解成解决问题的一些思路

二、设计模式的作用

通过设计模式可以帮助我们增强代码的可重用性、可扩充性、 可维护性、灵活性好。
我们使用设计模式最终的目的是实现代码的 高内聚和低耦合

那什么是高内聚和低耦合?

举例一个生活中的例子,例如一个公司,一般都是各个部门各司其职,互不干涉。各个部门需要沟通时通过专门的负责人进行对接。在软件里面也是一样的 一个功能模块只是关注一个功能,一个模块最好只实现一个功能。这个是所谓的内聚。

模块与模块之间、系统与系统之间的交互,是不可避免的, 但是我们要尽量减少由于交互引起的单个模块无法独立使用或者无法移植的情况发生, 尽可能多的单独提供接口用于对外操作, 这个就是所谓的低耦合

三、设计模式的六大原则

1、开闭原则(Open Close Principle)

开闭原则的意思是:对扩展开放,对修改关闭。在程序需要进行拓展的时候,不能去修改原有的代码。为了使程序的扩展性好,易于维护和升级,我们需要使用接口和抽象类,后面的具体设计中我们会提到这点。

2、里氏代换原则(Liskov Substitution Principle)

里氏代换原则是面向对象设计的基本原则之一
是继承复用的基石
是对开闭原则的补充。 (实现开闭原则的关键步骤就是抽象化,而基类与子类的继承关系就是抽象化的具体实现,所以里氏代换原则是对实现抽象化的具体步骤的规范。)
里氏代换原则中说,任何基类可以出现的地方,子类一定可以出现。

3、依赖倒转原则(Dependence Inversion Principle)

这个原则是开闭原则的基础,具体内容:针对接口编程,依赖于抽象而不依赖于具体

4、接口隔离原则(Interface Segregation Principle)

使用多个隔离的接口,比使用单个接口要好。降低类之间的耦合度

5、迪米特法则,又称最少知道原则(Demeter Principle)

最少知道原则是指:一个实体应当尽量少地与其他实体之间发生相互作用,使得系统功能模块相对独立。

6、合成复用原则(Composite Reuse Principle)

合成复用原则是指:尽量使用合成/聚合的方式,而不是使用继承。

三、设计模式的实现

请点击

  1. 工厂模式
  2. 单例模式

    待续...

总结

设计模式是在软件开发过程中面临的一般问题的解决方案。

设计模式的使用是为了重用代码、让代码更容易被他人理解、保证代码可靠性。

设计模式使代码编制真正工程化,设计模式是软件工程的基石,项目中合理地运用设计模式可以完美地解决很多问题。便于升级和维护的软件设计思想,它强调降低依赖,降低耦合( 高内聚和低耦合)

你可能感兴趣的:(【吃透】JS设计模式(Design pattern))