策略模式和观察者模式

策略模式和观察者模式属于行为型模式。

策略模式

策略模式主要是用在根据上下文动态控制类的行为的场景:

  • 一方面可以解决多个 if...else 判断带来的代码复杂性和维护性问题
  • 另一方面,把类的不同行为进行封装,使得程序可以进行动态的扩展和替换,增加了程序的灵活性。

像支付路由这种场景,就可以使用策略模式实现。

观察者模式

观察者模式主要用在一对多的对象依赖关系的中,实现某一个对象状态变更之后的感知的场景:

  • 一方面可以降低对象依赖关系的耦合度,弱化依赖关系。
  • 另一方面,通过这种状态通知机制,可以保证这些依赖对象之间的状态协同。

在 Spring 源码里面有大量运用这种观察者模式实现事件的传播和感知。

相关推荐
爱学习 爱分享2 天前
简单工厂模式和策略模式的区别
简单工厂模式·策略模式
xcntime5 天前
Python中print函数如何实现不换行输出?
策略模式
青春易逝丶6 天前
策略模式
java·开发语言·策略模式
sg_knight6 天前
设计模式实战:策略模式(Strategy)
java·开发语言·python·设计模式·重构·架构·策略模式
liangshanbo12156 天前
[特殊字符] macOS 上的 zoxide:智能目录跳转终极指南
macos·策略模式
Rabbit_QL8 天前
【Warp+Claude】任务完成自动通知(macOS + Warp 版)
macos·策略模式
Aaron_dw9 天前
QT软件开发设计模式-观察者模式
qt·观察者模式·设计模式
Sahadev_9 天前
macOS 解决 AirDrop 传输应用“已损坏“问题,以sublime为例
macos·策略模式·sublime text
筱璦10 天前
期货软件开发「启动加载页 / 初始化窗口」
前端·c#·策略模式·期货
Allen_LVyingbo10 天前
PostgreSQL动态分区裁剪技术:查询性能优化解析(2026年版)
数据库·算法·观察者模式·postgresql·性能优化·架构