首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
设计模式
订阅
lhh857
更多收藏集
微信扫码分享
微信
新浪微博
QQ
12篇文章 · 0订阅
JavaScript设计模式之行为型模式(上)
解决:避免请求发送者与接收者耦合在一起,让多个对象都有可能接收请求,将这些对象连接成一条链,并且沿着这条链传递请求,直到有对象处理它为止。 使用:在处理消息的时候以过滤很多道。 方式:拦截的类都实现统一接口。 场景:JS 中的事件冒泡;红楼梦中的"击鼓传花"。 降低耦合度。它将…
设计模式最佳套路2 —— 愉快地使用管道模式
管道模式(Pipeline Pattern) 是责任链模式(Chain of Responsibility Pattern)的常用变体之一。在管道模式中,管道扮演着流水线的角色,将数据传递到一个加工处理序列中,数据在每个步骤中被加工处理后,传递到下一个步骤进行加工处理,直到全部…
你必须要知道的前端状态管理器
随着React和Vue等异步框架的广泛运用,前端状态管理器逐渐成为前端开发比不可少话题。形如React有倍受欢迎的Redux,再如Vue标配的状态管理器Vuex,都是业内相对成熟的状态管理器,那么我们接下来就用原生javascript来实现一个状态管理器。 主要包含两个方面:第…
结合TypeScript,来讲前端人用的设计模式(Design pattern)
程序编程的历史由来已久,一个优秀的编程思想可以让我们写出更好的逻辑代码。面向对象的程序应该具有可维护性,代码可复用性,扩展性以及灵活性。为了实现以上的功能,大佬们总结出一套可用的内功心法,那就是设计模式。设计模式(Design pattern)是一套被反复使用、多数人知晓的、经…
TypeScript-详解策略模式(Strategy Pattern)
定义: 定义一系列的算法,把它们一个个封装起来,并且使它们可以互相替换。 一个基于策略模式的程序至少由两部分组成。 第一个部分是一组策略类 strategy,策略类封装了具体的算法,并负责具体的计算过程。 在现实中,很多时候也有多种途径到达同一个目的地。比如我们要去某个地方旅游…
如何优雅的实现消息通信?
作为一名 Web 开发者,在日常工作中,经常都会遇到消息通信的场景。比如实现组件间通信、实现插件间通信、实现不同的系统间通信。那么针对这些场景,我们应该怎么实现消息通信呢?本文阿宝哥将带大家一起来学习如何优雅的实现消息通信。 好的,接下来我们马上步入正题,这里阿宝哥以一个文章订…
JavaScript 中常见设计模式整理
开发中,我们或多或少地接触了设计模式,但是很多时候不知道自己使用了哪种设计模式或者说该使用何种设计模式。本文意在梳理常见设计模式的特点,从而对它们有比较清晰的认知。 看完了上述设计模式后,把它们的关键词特点罗列出来,以后提到某种设计模式,进而联想相应的关键词和例子,从而心中有数。
项目实战|基础请求封装
设计模式已经连载到了第 3 期,由于下一期的观察者模式要配合团队的埋点性能博客一起上要暂缓一段时间,所以这一篇算彩蛋篇,推出一个开箱即用型的 fetch 项目实战。 如上是直接使用 fecth 的方法,但在项目中直接引用会有很多不便的地方,所以我们先简单封装一下,比如跨域配置、…
从发布订阅模式入手读懂Node.js的EventEmitter源码
前面一篇文章setTimeout和setImmediate到底谁先执行,本文让你彻底理解Event Loop详细讲解了浏览器和Node.js的异步API及其底层原理Event Loop。本文会讲一下不用原生API怎么达到异步的效果,也就是发布订阅模式。发布订阅模式在面试中也是高…
不知道怎么封装代码?看看这几种设计模式吧!
我们经常听说:“写代码要有良好的封装,要高内聚,低耦合”。那怎样才算良好的封装,我们为什么要封装呢?其实封装有这样几个好处: JS生态已经有很多模块了,有些模块封装得非常好,我们使用起来很方便,比如jQuery,Vue等。如果我们仔细去看这些模块的源码,我们会发现他们的封装都是…