策略模式学习

使用场景

一个方法有很多的实现方式,并且需要使用if else等分支逻辑选择使用哪种实现方式

术语

环境

维护策略对象的引用,负责将请求委派给具体的策略对象执行。环境类可以通过依赖注入、简单工厂等方式获取具体策略对象

抽象策略

定义了策略类的公共接口,具体策略类必须实现公共接口

具体策略

实现了抽象策略定义的接口,包含具体的算法实现

使用限制

策略模式并不决定何时使用何种算法,算法的选择由客户端决定,客户端需要知道有哪些具体策略类,以便选择最合适的算法

参考

https://zhuanlan.zhihu.com/p/64584526

https://www.runoob.com/design-pattern/strategy-pattern.html

https://www.liaoxuefeng.com/wiki/1252599548343744/1281319606681634

https://design-patterns.readthedocs.io/zh-cn/latest/behavioral_patterns/strategy.html

相关推荐
xiaolin03339 小时前
【设计模式】- 行为型模式1
设计模式·状态模式·责任链模式·策略模式·命令模式·模板方法模式·行为型模式
西北大程序猿1 天前
日志与策略模式
策略模式
不爱学英文的码字机器4 天前
[操作系统] 策略模式进行日志模块设计
c++·策略模式
敲代码的 蜡笔小新4 天前
【行为型之策略模式】游戏开发实战——Unity灵活算法架构的核心实现策略
unity·设计模式·c#·策略模式
_yingty_4 天前
Java设计模式-策略模式(行为型)
java·设计模式·策略模式
Auc245 天前
OJ判题系统第6期之判题逻辑开发——设计思路、实现步骤、代码实现(策略模式)
java·开发语言·docker·容器·策略模式
ronshi5 天前
基于事件驱动和策略模式的差异化处理方案
策略模式·事件驱动
yangyang_z8 天前
【C++设计模式之Strategy策略模式】
c++·设计模式·策略模式
YoseZang8 天前
【设计模式】GoF设计模式之策略模式(Strategy Pattern)
设计模式·策略模式
世纪摆渡人8 天前
设计模式-策略模式(Strategy Pattern)
设计模式·策略模式