策略模式和观察者模式

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

策略模式

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

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

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

观察者模式

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

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

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

相关推荐
吃喝不愁霸王餐APP开发者6 小时前
基于策略模式动态选择不同地区霸王餐API接口的路由实现
策略模式
未来之窗软件服务8 小时前
幽冥大陆(六十三) roff 语言:核心用途与使用指南—东方仙盟筑基期
策略模式·东方仙盟·roff
老朱佩琪!12 小时前
Unity策略模式
unity·设计模式·策略模式
山沐与山2 天前
【设计模式】Python策略模式:从入门到实战
python·设计模式·策略模式
多看书少吃饭4 天前
Electron 桌面应用打开录音功能导致页面蓝屏问题解决方案
javascript·electron·策略模式
大海星辰7985 天前
工厂模式与策略模式的深度实践:从代码优化到架构思考
java·架构·策略模式
天勤量化大唯粉5 天前
基于距离的配对交易策略:捕捉价差异常偏离的均值回归机会(天勤量化代码实现)
android·开发语言·python·算法·kotlin·开源软件·策略模式
syt_10135 天前
设计模式之-策略模式
设计模式·bash·策略模式
不爱吃糖的程序媛6 天前
解决鸿蒙PC命令行编译 macOS 上 cp 命令参数冲突问题
macos·harmonyos·策略模式