策略模式和观察者模式

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

策略模式

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

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

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

观察者模式

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

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

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

相关推荐
赶路人儿2 天前
MacOS 下实现 AI 操控电脑(Computer Use)的思考
人工智能·macos·策略模式
Fozei2 天前
录屏原理与鼠标可视化
计算机外设·策略模式
AIex-YH6 天前
菌种工艺四讲(三):育种工具不是“越新越好“,是“越匹配越好“
制造·策略模式
起司喵喵6 天前
Flutter-MacOS桌面OS系统|flutter.+window_manager客户端OS模板
flutter·macos·策略模式
啊真真真6 天前
macOS下libnfc ..写卡失败问题及解决方案
macos·策略模式
Eric Woo X8 天前
macOS 旧版本无法启动 Steam ?一条命令恢复运行(2026年7月实测)
macos·策略模式
紫霄芯语10 天前
观察者模式在FPGA中断系统的实战重构
观察者模式·fpga开发·重构
张小姐的猫16 天前
【Linux】网络编程 —— HTTP协议(上)
linux·运维·服务器·网络·http·单例模式·策略模式
笨拙的老猴子22 天前
小明学架构师的第七课:策略模式:告别if-else的选择困难症
系统架构·策略模式
肖爱Kun23 天前
C++设计策略模式
开发语言·c++·策略模式