桥接模式处理下机计算金额问题

简介:                      上次个人版的时候,上下机算钱部分用的是策略+职责链,(详情参见:http://blog.csdn.net/lhc1105/article/details/30713331)然后因为调用方法太多,又加了个外观,处理的有点儿复杂了,感觉模式用的有点儿生硬。

         

           上次个人版的时候,上下机算钱部分用的是策略+职责链,(详情参见:http://blog.csdn.net/lhc1105/article/details/30713331)然后因为调用方法太多,又加了个外观,处理的有点儿复杂了,感觉模式用的有点儿生硬。


      这次合作版,添加设计模式的时候就去掉了它,改用另一个设计模式处理这个过程了。

 

      这次用的是桥接模式:


    



       因为下机受到计算钱到两个参数的影响,一个是用户类型,一个是收费策略,所以就用桥接模式分开这两个变化,比起以前写N*M个 策略上机策略更易于扩展和应对变化,可以加上很多类型的用户,也可以写很多如何收费的方法,如果两个方向的子类都很多,那么产生的N*M中组合也会很大,和主要使用策略模式相比,这种结构感觉是一种动态生成策略,比提前写好所有的策略更灵活。


       小结:设计模式感觉挺有意思的,在个人版的时候可以先生拉硬拽的加上,到了合作版的时候,可以对自己使用的模式进行再思考,从而进行一个优化。




     

目录
相关文章
|
8月前
银行定期存款利率,输入金额,输入年限,计算本息总额
银行定期存款利率,输入金额,输入年限,计算本息总额
131 0
|
Python
使用Python实现股票资金模拟盘交易
使用Python实现股票资金模拟盘交易案例
416 2
极态云中 2 行代码搞定流水账中的期初期末计算!
今天咱们就来聊聊如何用极态云这个神器来解决期初期末的计算!极态云 JIT 真的太强大了,只有你想不到,没有它做不到的。
|
数据库
第一次机房收费系统———学生查看余额
第一次机房收费系统———学生查看余额
【SQL开发实战技巧】系列(十四):计算消费后的余额&计算银行流水累计和&计算各部门工资排名前三位的员工
本篇文章讲解的主要内容是:***通过模拟计算消费流水账及计算银行流水累计和讲解sum()over()函数使用场景、通过计算各部门工资排名前三位的员工小案例来介绍ROW_NUMBER、RANK、DENSE_RANK使用方法及区别***
【SQL开发实战技巧】系列(十四):计算消费后的余额&计算银行流水累计和&计算各部门工资排名前三位的员工
装饰模式实例复杂的奖金计算
装饰模式实例复杂的奖金计算
130 0
装饰模式实例复杂的奖金计算
按键精灵实现交易开拓者33个品种回测时间和交易费用的设置
按键精灵实现交易开拓者33个品种回测时间和交易费用的设置
226 0
L1-051 打折 (5 分)
L1-051 打折 (5 分)
271 0
|
存储 设计模式 前端开发
你有没有想过为什么交易和退款要拆开不同的表?
近期做新项目,在设计表结构的时候,突然想起来之前面试的时候遇到的一个问题,那时候也是初出茅庐,对很多东西一知半解(当然现在也是),当时那个小哥哥问我为什么交易和退款要拆成两个表?是基于什么考虑?有什么好处和优点么?
389 0
|
JavaScript 前端开发
使用 JavaScript 根据消费金额和消费者是否为会员确定折扣,最终核算实际应该支付的金额
使用 JavaScript 根据消费金额和消费者是否为会员确定折扣,最终核算实际应该支付的金额
476 0
使用 JavaScript 根据消费金额和消费者是否为会员确定折扣,最终核算实际应该支付的金额