设计模式 | 青训营笔记

62 阅读2分钟

这是我参与「第四届青训营 」笔记创作活动的第3天

设计模式是什么?

设计模式是应对于特定问题的一种常见的解决方案

  • 它与特定的语言无关
  • 一般是由前辈们经验总结,具有一定的普遍性

我们在使用时最重要的是理解其中的思想。

设计模式背景与趋势

image.png

image.png

23种设计模式

三种类型:创建型结构性行为型

浏览器中的设计模式:

单例模式

定义:全局唯一访问对象

应用场景:全局缓存全局状态管理

发布订阅模式(观察者模式)

一种订阅机制,可在被订阅对象变化时通知订阅者(订阅者有可能是一个函数)

应用场景:vue通信机制,邮件订阅等等

JS中的设计模式:

原型模式

定义:复制已有对象来创建新的对象

应用场景:JS中对象创建的基本模式

代理模式

定义:可自定义控制对原对象的访问方式,并允许在更新前后做一些额外处理

应用场景:前端监控,代理工具,前端框架

迭代器模式

定义:在不暴露数据类型的情况下访问集合中的数据

应用场景:数据结构中的数据类型、树、列表等

前端框架中的设计模式:

代理模式:

给原类添加非功能性需求,为了将代码与原业务解耦。 image.png

组合模式:

可多个对象组合使用,也可单个对象独立使用

应用场景:DOM,前端组件,文件目录等。

总结:

设计模式这类的知识非常丰富,需要多次复习强化记忆,在平常使用时不能死搬硬套,要活学活用,学以致用,理解其中思想并加以实践

相关文章推荐: juejin.cn/post/695342… juejin.cn/post/684490…