策略模式学习

使用场景

一个方法有很多的实现方式,并且需要使用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

相关推荐
朗迹 - 张伟1 天前
用AI开发QT——Qt与Trae开发环境搭建
开发语言·qt·策略模式
A懿轩A1 天前
Ghostty:告别 Mac 毛坯终端,打造 2026 最丝滑的 Ghostty AI 开发驾驶舱——Claude Code 团队也在用
python·macos·策略模式
二哈赛车手2 天前
新人笔记---多策略搭建策略执行链实现RAG检索后过滤
java·笔记·spring·设计模式·ai·策略模式
geovindu3 天前
go: Strategy Pattern
开发语言·设计模式·golang·策略模式
jimy13 天前
一个夜间期权交易策略的评价
策略模式·程序员创富
harder3216 天前
RMP模式的创新突破
开发语言·学习·ios·swift·策略模式
ximu_polaris6 天前
设计模式(C++)-行为型模式-策略模式
c++·设计模式·策略模式
原来是猿8 天前
线程安全的单例模式
linux·服务器·开发语言·单例模式·策略模式
Mr_linjw9 天前
策略模式简介
策略模式
故乡de云9 天前
Cursor + Claude Code 接入 API 实战:国内稳定使用 Claude 4.7 配置全攻略
大模型·ai编程·策略模式·claude·cursor·claude code