zoukankan      html  css  js  c++  java
  • 设计模式学习01策略模式

    定义

    The Strategy pattern

    The strategy pattern defines a family of algorithms encapsulate each one, and makes them interchangeable. Strategy lets algorithm vary independently from clients that use it.

    策略模式

    策略模式定义了一系列的算法,分别封起来,让它们之间可以互相替换,此模式让算法的变化独立于使用算法的客户.

    说明

    简单的来说,对于一个接口,有多种实现。这些实现可以自由替换,不会影响其它客户的调用.


    图示


    列举的是游泳的例子,游泳有好几种游法,一个人在游泳时可以蝶泳,蛙泳,仰泳等等,所以将游泳这个行为抽成一个接口,下面依次蝶泳,蛙泳,仰泳的实现。而Person类直接引用游泳接口,可以在运行时通过设置swimable来动态的改变游泳的方式。

    总结

    策略模式是一个提倡“针对接口编程”的模式,而使用接口的目的是为了统一标准或着说是制定一种强行的规定。

    策略模式的使用是由用户发起的,根据用户的操作决定使用什么具体的策略角色。策略模式仅仅封装算法,提供新的算法加入到已有系统和算法间的相互替换.

  • 相关阅读:
    2020-03-03
    2020-03-02
    2020-03-01
    2020-02-29
    简单自我介绍
    福大软工1816 · 第六次作业
    福大软工1816 · 第五次作业
    python爬虫解决编码问题
    第四次作业-团队介绍
    福大软工1816 · 第三次作业
  • 原文地址:https://www.cnblogs.com/51cto/p/1413303.html
Copyright © 2011-2022 走看看