简单工厂模式VS策略模式

简单工厂模式VS策略模式

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

策略模式UML图:

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

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

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

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

总结来说就是

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

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

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

相关推荐
liulilittle5 天前
macOS 内核路由表操作:直接 API 编程指南
网络·c++·macos·策略模式·路由·route·通信
青草地溪水旁5 天前
设计模式(C++)详解——策略模式(1)
c++·设计模式·策略模式
o0向阳而生0o5 天前
105、23种设计模式之策略模式(14/23)
设计模式·策略模式
青草地溪水旁6 天前
设计模式(C++)详解——策略模式(2)
c++·设计模式·策略模式
一勺菠萝丶7 天前
macOS 终端配置全攻略:zsh、bash_profile、zprofile、zshrc 到 nvm 配置的完整科普
macos·bash·策略模式
Miqiuha7 天前
设计模式之策略模式学习
学习·设计模式·策略模式
醉、倾城8 天前
面向开发人员的macOS入门教程
macos·策略模式
zero13_小葵司9 天前
在不同开发语言与场景下设计模式的使用
java·开发语言·javascript·设计模式·策略模式
charlie11451419110 天前
精读C++20设计模式——行为型设计模式:策略模式
c++·学习·设计模式·策略模式·c++20
2023框框10 天前
方法器 --- 策略模式(Strategy Pattern)
java·策略模式