设计模式


# 设计模式

为什么要学习设计模式(Why)

  • 我本科读的非科班,靠自学入的行,因此这块知识需要补齐。
  • 对于项目技术负责人来说,设计能力是必要基础。
  • 从写好代码,到做好设计,设计模式是必经之路。
  • 现在很多框架的源码中大量运用了各种设计模式,想要读懂框架源码,这是前置条件。
  • 中高级开发工程师的面试也会考察设计能力。

怎么学设计模式(How)

设计模式拆开来讲就是「设计原则」和「模式」,一共有 5 大设计原则,23 种设计模式。

值得一提的是,JavaScript 受限于它本身的语言特性,在设计模式上远不如 Java 等后端语言那样发挥空间大,如果将一些传统面向对象语言的设计模式生搬硬套过来反而会有些奇怪。

因此作为一名前端开发工程师,我主要着眼于 JS 在某种场景下对于设计模式理念的体现和应用。并且在前端领域,其实只需要重点关注部分设计模式即可,这样有针对性地学习,效果会更好,也不容易被劝退。


怎么用设计模式(How)

设计模式就相当于武功秘籍里面的招式,是先辈们总结出来的最佳实践,如果在合适的场景施展,则事半功倍,以后扩展和阅读都十分舒畅。如果生搬硬套、为了用而用,则会提升代码复杂度,反而让团队其他成员一脸懵,平白增加协作成本。