为什么我要在这一章讲几种常用设计模式的demo呢?

  1. 我在学习设计模式之前,曾认为“设计模式”这个高端的词语所代表的意义非常深刻,远非我一个初学者可以搞懂的。————实际上,设计模式的确意义深刻,但他也并不难,只要你有一定的编程基础,一定可以掌握。
  2. 我个人认为,设计模式对于一个开发者来说是一道绕不过去的坎,而当前的前端已经远非几年前的“切图仔”,掌握设计模式会让你用更多元化的角度去看代码,写代码。
  3. 代码设计模式在框架中非常常见,如果你不了解一些设计模式,我想你要看懂别人的代码,拆解框架也需要花费很长的时间。
  4. 可以提高你的编码效率,你会发现原来的很多代码都可以用更简洁也更安全的方式实现出来。

关于以下的一些demo,有这样一些约定

  1. 为了方便你理解每种设计模式的应用场景,以下demo依然出自于实际需求,而不会像市面上一些书一样创建一些没有意义的对象,因为我觉得这会让初学者感到困惑,看不到学习这种模式的意义。
  2. 鉴于ES6已经非常普及,但很多前端初学者还是丛ES5起步,本章的所有设计模式都会用ES5的写法分析并逐步实现,并在每节之后给出ES6的实现。

参考文献《javascript模式》

《javascript设计模式》

《javascript设计模式与开发实践》