工厂方法模式
2023-09-11 14:22:19 时间
简单工厂模式违背了开闭原则,扩张性不好
工厂方法模式 :
有需求就去创建工厂
新工厂继承工厂类
这样避免修改其他工厂
把操作对象改变成操作各自的工厂
class Animal { constructor(name) { this.name=name; } eat() { console.log('吃什么呀') } } class Dog extends Animal { constructor(name) { super(name); this.call='汪汪' } } class Cat extends Animal { constructor(name) { super(name); this.call='喵喵' } } class DogFactory{ create() { return new Dog('xiao'); } } class CatFactory{ create() { return new Cat('wei'); } } const settings={ 'dog': DogFactory, 'cat': CatFactory } let dog=new settings['dog']().create(); console.log(dog); let cat=new settings['cat']().create(); console.log(cat);
相关文章
- 简单工厂模式、工厂方法模式、抽象工厂模式 之间的对比
- 简单工厂模式、工厂方法模式、抽象工厂模式 之间的对比
- 设计模式-工厂方法模式
- 设计模式复习-工厂方法模式
- 两种CentOS7命令行模式和图形模式切换方法(简单常用)
- 【23种设计模式】模板方法模式(Template Method Pattern) .Net Core实现
- 易学设计模式看书笔记(3) - 工厂方法模式
- 设计模式(五)简单工厂模式+工厂方法模式
- 深入浅出模板方法模式
- [设计模式] 22 模板方法模式 template
- JS模式:策略模式,感觉就是一个闭包存储信息,然后是加一些验证方法--还看了老半天
- 针对今天客户提出的问题IE8 浏览器文本模式变为杂项解决方法
- Django 4.x Logging 日志使用示例和配置方法
- 《软件建模与设计: UML、用例、模式和软件体系结构》一一1.10 并发、分布式和实时设计方法
- 详解Java中的clone方法 -- 原型模式
- 设计模式——模板方法模式
- 国庆假期带你玩转设计模式之模板方法模式
- 设计模式(四)工厂方法模式
- 《Java设计模式》之模板方法模式
- 封装算法: 模板方法(Template Method)模式
- 执行游戏时出现0xc000007b错误的解决方法
- 简单工厂、工厂方法、抽象工厂、策略模式、策略与工厂的区别