简单工厂模式VS策略模式

简单工厂模式VS策略模式

今天复习设计模式,由于简单工厂模式和策略模式太像了,重新整理梳理一下
简单工厂模式MUL图:

策略模式UML图:

1、简单工厂模式中只管创建实例,具体怎么使用工厂实例由调用方决定,他只负责创建具体对象;

2、策略模式是将生成实例的使用策略放在策略类中配置后才提供调用方使用。

3、 简单工厂模式调用方可以直接调用工厂实例的方法属性等;

4、策略模式不能直接调用实例的方法属性,需要在策略类中封装策略后调用。

总结来说就是

1、简单工厂模式--》创建对象

2、 策略模式--》封装策略(算法)

其实单单就UML图来说,简单工厂模式也可以画成和策略模式一样,但是两个设计模式的侧重点不一样,简单工厂模式侧重点在于创建对象;策略模式的侧重点在于算法的封装;

相关推荐
wuqingshun31415914 小时前
请描述简单工厂模式的工作原理
java·简单工厂模式
笨拙的老猴子2 天前
小明学架构师的第七课:策略模式:告别if-else的选择困难症
系统架构·策略模式
肖爱Kun2 天前
C++设计策略模式
开发语言·c++·策略模式
折哥的程序人生 · 物流技术专研4 天前
Java 23 种设计模式:从踩坑到精通 | 番外:策略 vs 模板方法 —— 组合与继承的终极对决
java·策略模式·java面试·comparator·模版方法模式·java设计模式·从踩坑到精通
折哥的程序人生 · 物流技术专研4 天前
Java 23 种设计模式:从踩坑到精通 | 番外:状态 vs 策略 —— if-else 消除的两条路,你走对了吗?
java·spring·状态模式·策略模式·java面试·java设计模式·从踩坑到精通
ttod_qzstudio6 天前
【软考设计模式】策略模式:算法族的封装与动态切换精讲
设计模式·策略模式
儒雅的名7 天前
GoF设计模式——策略模式
设计模式·bash·策略模式
折哥的程序人生 · 物流技术专研7 天前
第4篇:Lambda 简化策略模式(Java 8+)
java·设计模式·策略模式·函数式编程·lambda·代码简化·扩充系列
在水一缸8 天前
拒绝被打扰:深度解析 macOS 进程守护与“反自动启动”攻防战
macos·策略模式·用户体验·进程守护·自动启动·系统权限
折哥的程序人生 · 物流技术专研9 天前
第3篇:手写促销策略引擎(满减、打折、立减)
java·设计模式·策略模式·开闭原则·编程实战·扩充系列·促销引擎