简单工厂模式VS策略模式

简单工厂模式VS策略模式

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

策略模式UML图:

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

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

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

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

总结来说就是

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

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

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

相关推荐
周末也要写八哥5 小时前
策略模式的思想的经典案例分析
策略模式
AC赳赳老秦13 小时前
OpenClaw与Excel联动:批量读取/写入数据,生成可视化报表
开发语言·python·excel·产品经理·策略模式·deepseek·openclaw
lwf0061642 天前
解决macOS .dmg 文件无法安装问题
macos·策略模式
草莓熊Lotso3 天前
手搓工业级 C++ 线程安全日志系统:基于策略模式解耦,兼容 glog 使用风格
linux·运维·服务器·数据库·c++·安全·策略模式
蜜汁小强3 天前
macOS 开发者的 tmux 实战配置:分屏导航、vi 复制模式与系统剪贴板一站打通
macos·策略模式
AC赳赳老秦4 天前
OpenClaw与系统环境冲突:Windows/Mac系统兼容问题解决指南
开发语言·python·产品经理·策略模式·pygame·deepseek·openclaw
筱璦4 天前
C#期货分仓、策略交易模拟演示系统(含资源下载)
开发语言·c#·策略模式·量化交易·期货交易
艾莉丝努力练剑4 天前
【Linux线程】Linux系统多线程(八):<策略模式>日志系统的封装实现
linux·运维·服务器·c++·学习·策略模式
云空7 天前
《OpenClaw(macOS版)部署与使用中的安全问题及解决方案》
安全·macos·策略模式
Rsun045518 天前
13、Java 策略模式从入门到实战
java·bash·策略模式