DP学习——策略模式

学而时习之,温故而知新。

敌人出招(使用场景)

业务中需要多个算法可替换,而不能重构代码时,怎么办?或者一个对象在运行中要根据业务切换不同的模式或者采用不同的算法,怎么办?

到你出招

这个时候就要出策略模式这一招了。

具体招式

策略模式的招式,就是把需要替换的算法抽象成接口类,然后根据不同业务定义人多子类——储备很多子类来实现接口类的可替换算法。

这样的话,一个对象想要根据业务状态执行不同算法或者策略,那么只需要传递进来不同的策略子类就行了。

招式特点

这个策略实际上分为2类,一类是各种继承抽象策略类的子类,另一类就是使用这些策略的类,它提供策略替换接口,随时随地根据业务改变策略——接受那些策略子类传递。

相关推荐

  1. DP学习——策略模式

    2024-07-12 03:14:06       18 阅读
  2. DP学习——组合模式

    2024-07-12 03:14:06       19 阅读
  3. DP学习——状态模式

    2024-07-12 03:14:06       21 阅读
  4. DP学习——简单工厂模式

    2024-07-12 03:14:06       19 阅读
  5. DP学习——建造者模式

    2024-07-12 03:14:06       25 阅读
  6. DP学习——中介者模式

    2024-07-12 03:14:06       19 阅读
  7. 策略模式学习

    2024-07-12 03:14:06       57 阅读
  8. DP学习——设计模式实现参考

    2024-07-12 03:14:06       22 阅读
  9. DP学习——设计模式怎么来的?

    2024-07-12 03:14:06       18 阅读
  10. DP讨论——适配器模式

    2024-07-12 03:14:06       23 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-12 03:14:06       67 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-12 03:14:06       72 阅读
  3. 在Django里面运行非项目文件

    2024-07-12 03:14:06       58 阅读
  4. Python语言-面向对象

    2024-07-12 03:14:06       69 阅读

热门阅读

  1. UNIAPP 使用地图 百度 高德 腾讯地图路线轨迹

    2024-07-12 03:14:06       21 阅读
  2. 理解李彦宏的“不卷模型,卷应用”理念

    2024-07-12 03:14:06       23 阅读
  3. 关于windows下编译xLua插件的流程记录

    2024-07-12 03:14:06       23 阅读
  4. 从零开始学习嵌入式----Makefile工具

    2024-07-12 03:14:06       17 阅读
  5. SpringBoot 定时任务之@Scheduled cron表达式

    2024-07-12 03:14:06       17 阅读
  6. C/C++开发,IniFile源码下载

    2024-07-12 03:14:06       19 阅读
  7. jQuery Mobile 安装指南

    2024-07-12 03:14:06       26 阅读
  8. centos ssh一键升级到9.8版本脚本

    2024-07-12 03:14:06       20 阅读