美文网首页
策略模式(算法)

策略模式(算法)

作者: 小小少年Boy | 来源:发表于2018-08-04 10:15 被阅读0次

策略模式

策略模式将可变的部分从程序中抽象成接口,在该接口下分别封装一系列算法实现

主要是针对一组算法,将每个算法封装到具体共同接口的独立的类中,从而使得它们可以相互替换,使得算法在不影响到客户端的情况下发生变化(定义一系列的算法,把它们一个个封装起来,并且使它们可相互替换,本模式使得算法可独立于使用它的客户而变化)

举例:

假设现在要设计一个贩卖各类书籍的电子商务网站的购物车系统。一个最简单的情况就是把所有货品的单价乘上数量,但是实际情况肯定比这要复杂。比如,本网站可能对所有的高级会员提供每本20%的促销折扣;对中级会员提供每本10%的促销折扣;对初级会员没有折扣。

image

client传入MemberStrategy对象到Price中,Price 调用quote().calePrice()

相关文章

  • 设计模式-策略模式

    设计模式-策略模式 策略模式 策略模式-对象行为型模式 :定义了一系列算法,并且将算法分别封装,它们之间可以相互替...

  • 设计模式之策略模式

    策略模式 1、什么是策略模式     策略模式让算法独立于使用它的客户而独立变化。策略模式重点是封装不同的算法和行...

  • 策略、工厂模式融合 InitializingBean

    策略、工厂模式融合 InitializingBean 策略、工厂模式分别是什么 策略模式 策略模式是将不同的算法封...

  • 设计模式笔记(15)--策略模式

    策略模式 GOF对于策略模式的定义是:“策略模式定义了算法家族,分别封装起来,让他们之间可以互相替换,此模式让算法...

  • 使用lambda表达式重构面向对象的设计模式(一)

    策略模式重构 策略模式中的策略在编程中其实就是算法,使用Sttrategy模式可以整体地替换算法的实现部分。能够整...

  • Android开发笔记十七

    1.策略模式定义 策略模式,又叫算法簇模式,就是定义了不同的算法族,并且之间可以互相替换,此模式让算法的变化独立于...

  • 实际项目运用之Strategy模式(策略模式)

    1. 策略模式概要 策略模式是对算法的包装,是把使用算法的责任和算法本身分割开来,委派给不同的对象管理。策略模式通...

  • 策略模式

    什么是策略模式? 策略模式定义了一系列算法,并将算法封装起来,而且使他们可以相互替换。策略模式让算法独立于使用它的...

  • java23种设计模式-策略模式

    1. 策略模式的结构 策略模式是对算法的包装,是把使用算法的责任和算法本身分割开来,委派给不同的对象管理。策略模式...

  • 【Java进阶营】java23种设计模式-策略模式

    1. 策略模式的结构 策略模式是对算法的包装,是把使用算法的责任和算法本身分割开来,委派给不同的对象管理。策略模式...

网友评论

      本文标题:策略模式(算法)

      本文链接:https://www.haomeiwen.com/subject/spwpvftx.html