策略模式 【会员折扣】的工厂模式升级实现

时间:2022-05-24 21:58:34

策略模式,

顾名思义, 就策略而言, 很简单很好理解, 策略的诞生, 主要是为了适用不同的场景,  设计的不同的应对策略, 方法。

_____________________________________________________________________________________

举个很简单的例子:

在商品中的销售 .... (朋友们别嫌弃, 说我老是拿商场的来举例子, 毕竟我们见的最多, 也频率很高, 所以理解起来更加容易理解, 和发挥其想象空间)。

 

在销售员结账时, 他可以根据工厂模式对不同的会员类型进行结算(不同的折扣率),  这个大家都知道, 可是很多人看完了策略模式可能又有些不理解, 策略模式到底是什么?

就简单的来说: 针对不同的商场, 不同的节假日, 那么他们或许可能会搞活动(什么满减、全场清仓.... ),  而针对不同的节假日, 这里就讲重点了, 他们肯定会针对不同的节日

进行战略性的营销策略:  什么劳动节1折, 儿童劫6折等等...    (别想多了, 没有商场会这么干- -!!, 除非脑子短路了。)

 

示例图解:

策略模式 【会员折扣】的工厂模式升级实现

 

肛上代码:

改例仍然引用博客中的 第一步 和第 二步 , 定义结算接口, 和用户类。

原文地址: http://www.cnblogs.com/zh7791/p/7086055.html

 

第三步: 创建策略工厂类, 定义一个结算接口, 和创建一个 参数为 string类型的 会员类型的类构造函数。

策略模式 【会员折扣】的工厂模式升级实现

 

第四步: 在CreateContext类中创建不同的策略方法, 针对 元旦节、劳动节、儿童节的具体方法。

策略模式 【会员折扣】的工厂模式升级实现

第五步: 客户端调用创建并调用策略工厂对象

 策略模式 【会员折扣】的工厂模式升级实现

显示结果

结果如下图,  如何针对不同的节假日, 进行不同的折扣消费活动, 得到的不同金额的消费金额。 

策略模式 【会员折扣】的工厂模式升级实现