前端常用的设计模式

一、工厂模式

工厂模式(Factory Pattern)是 程序中最常用的设计模式之一,它提供了一种创建对象的方式,使得创建对象的过程与使用对象的过程分离。工厂模式提供了一种创建对象的方式,而无需指定要创建的具体类。通过使用工厂模式,可以将对象的创建逻辑封装在一个工厂类中,而不是在客户端代码中直接实例化对象,这样可以提高代码的可维护性和可扩展性

优点
  1. 调用者只需要知道对象的名称即可创建对象。
  2. 扩展性高,如果需要增加新产品,只需扩展一个工厂类即可。
  3. 屏蔽了产品的具体实现,调用者只关心产品的接口。
缺点

每次增加一个产品时,都需要增加一个具体类和对应的工厂,使系统中类的数量成倍增加,增加了系统的复杂度和具体类的依赖。

**使用场景:**一般使用在sdk的封装、原码中使用较多,例如vue中

实现:

复制代码
class Main {
  constructor(name) {
    this.name = name
  }
  alertName() {
    alert(this.name)
  }
}
 
class Factory {
  static create(name) {
    return new Main(name)
  }
}


Factory.create('bhj').alertName();
相关推荐
Yu_Lijing7 小时前
基于C++的《Head First设计模式》笔记——模式合作
c++·笔记·设计模式
S-X-S7 小时前
常用设计模式+集成websocket
websocket·设计模式
编程饭碗11 小时前
【二十三种设计模式】
设计模式
茶本无香18 小时前
设计模式之五—门面模式:简化复杂系统的统一接口
java·设计模式
小码过河.19 小时前
设计模式——模板方法模式
python·设计模式·模板方法模式
Engineer邓祥浩19 小时前
设计模式学习(19) 23-17 观察者模式
学习·观察者模式·设计模式
一条闲鱼_mytube20 小时前
智能体设计模式(六)资源感知优化-推理技术-评估与监控
网络·人工智能·设计模式
一条闲鱼_mytube20 小时前
智能体设计模式(七)优先级排序-探索与发现
网络·人工智能·设计模式
羞儿1 天前
Agent设计模式与工程化
设计模式·知识图谱·agent·rag·mcp·指导开发
点云SLAM1 天前
C++(C++17/20)最佳工厂写法和SLAM应用综合示例
开发语言·c++·设计模式·c++实战·注册工厂模式·c++大工程系统