简单工厂模式(Simple Factory Pattern)
一、概念
简单工厂模式也叫静态工厂模式
,是指由 一个工厂
决定创建哪一种产品类的实例,但它不属于GoF的23种设计模式
。简单工厂模式适用于工厂类负责创建的对象较少的场景。(不属于标准的设计模式)
- 该工厂类一般是使用静态方法,根据我们传参的不同,
返回不同的派生自同一个父类 或 实现同一接口
的实例对象。
二、参与者
抽象产品:工厂创建的具体对象的父类或者共同接口
具体产品:是抽象产品的具体实现
产品工厂类:负责所有对象实例的内部逻辑
调用者:
三、代码例子
BMW工厂 生产 BMW320和BMW520
抽象产品:BMW
具体产品:BMW320 和 BMW520
产品工厂类:SimpleFactory
四、UML图
五、优缺点
(一)优点:
- 代码编写简单
- 工厂都具有的优点:通过工厂创建对象,不关心对象实例化的具体逻辑
(二)缺点:
- 多个产品的创建逻辑耦合在一起,不符合
单一职责原则
,一旦工厂出现问题,整个系统都要受到影响。 - 系统扩展困难,一旦添加新产品就得修改工厂逻辑,
违反了“开闭原则”
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· DeepSeek 开源周回顾「GitHub 热点速览」
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了