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

策略模式(算法)

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

    策略模式

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

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

    举例:

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

    image

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

    相关文章

      网友评论

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

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