首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
Javascript 设计模式
订阅
前端君
更多收藏集
微信扫码分享
微信
新浪微博
QQ
14篇文章 · 1订阅
通俗易懂的理解 IoC 控制反转、依赖倒置
控制反转和依赖倒置原则特别适用于需要提高代码灵活性、可维护性和可测试性的场景,如大型应用程序和框架开发。合理使用可以降低耦合度,提高代码可维护性、可测试性和可扩展性,促进模块化、灵活性,使系统更易于理
Javascript 面向接口编程
鸭子类型: “如果它走起路来像鸭子,叫起来也是鸭子,那么它就是鸭子。” 面向接口编程在面向对象语言中可以使用抽象类和 interface 来实现。 为了防止鸭子类或者鸡类没有实现makeSound方法导致报错,一方面可以写参数检查,另一方面可以借助typescript的接口In…
23种常用设计模式分类
这些设计模式提供了一种在创建对象的同时隐藏创建逻辑的方式,而不是使用 new 运算符直接实例化对象。这使得程序在判断针对某个给定实例需要创建哪些对象时更加灵活。 这些设计模式关注类和对象的组合。继承的概念被用来组合接口和定义组合对象获得新功能的方式。 这些设计模式特别关注对象之…
Javascript 设计模式 - 状态模式
状态模式允许一个对象在其内部状态改变时改变它的行为,对象看起来似乎修改了它的类。 这种类型的设计模式属于行为型模式。 状态模式的关键是区分事物内部的状态,事物内部状态的改变往往会带来事物的行为改变。 在状态模式中,我们创建表示各种状态的对象和一个行为随着状态对象改变而改变的 c…
Javascript 设计模式 - 职责链模式
在这种模式中,通常每个接收者都包含对另一个接收者的引用。如果一个对象不能处理该请求,那么它会把相同的请求传给下一个接收者,依此类推,直到有一个对象处理它为止。 这种类型的设计模式属于行为型模式。 职责链上的处理者负责处理请求,客户只需要将请求发送到职责链上即可,无须关心请求的处…
Javascript 设计模式 - 享元模式
享元模式属于结构型模式,它提供了减少对象数量从而改善应用所需的对象结构的方式。 解决的问题: 在有大量对象时,有可能会造成内存溢出,我们把其中共同的部分抽象出来,如果有相同的业务请求,直接返回在内存中已有的对象,避免重新创建。 使用注意: 使用了享元模式之后,我们需要分别多维护…
Javascript 设计模式 - 模板模式 & 适配器模式
在传统的面向对象语言中,一个运用了模板方法模式的程序中,子类的方法种类和执行顺序都是不变的,所以我们把 这部分逻辑抽象到父类的模板方法里面。而子类的方法具体怎么实现则是可变的,于是我们把这 部分变化的逻辑封装到子类中。通过增加新的子类,我们便能给系统增加新的功能,并不需要改 动…
Javascript 设计模式 - 模板方法模式(Template Method)
在传统的面向对象语言中,一个运用了模板方法模式的程序中,子类的方法种类和执行顺序都是不变的,所以我们把 这部分逻辑抽象到父类的模板方法里面。而子类的方法具体怎么实现则是可变的,于是我们把这 部分变化的逻辑封装到子类中。通过增加新的子类,我们便能给系统增加新的功能,并不需要改 动…
Javascript 设计模式 - 组合模式(Composite Pattern)
当我们想执行一个宏大的任务时,这个任务可以被细分为多层结构,组合模式可以让我们只发布一次执行命令,就能完成整个复杂的任务,屏蔽层级关系和差异化问题。 组合模式应树形结构而生,所以组合模式的使用场景就是出现树形结构的地方。 命令分发: 只需要通过请求树的最顶层对象,便能对整棵树做…
Javascript 设计模式 - 迭代器模式
迭代器模式可以把迭代的过程从业务逻辑中分离出来,在使用迭代器模式之后,即使不关心对象的内部构造,也可以按顺序访问其中的每个元素。 总结: 内部迭代器调用方式简答,但它的适用面相对较窄。 外部迭代器增加了一些调用的复杂度,但相对也增强了迭代器的灵活性,我们可以手工控制迭代的过程或…