“模板方法+职责链设计模式”解决业务场景重复以及场景之间依赖

前言

业务场景

分别依次处理多个相似业务;每个业务按照多个灵活的方式进行处理。例如:移动公司推出三项套餐业务A,B,C;开通每个业务需要分别执行以下步骤:1、用户校验是否之前开通过;2、开通业务的同时并发送短信通知该用户;3、保证该操作执行完毕的进行的监听手段,等等多个步骤。若A、B、C套餐可以同时开通多个,需要按照A、B、C的顺序开通

应用

分析

  • 模板方法:校验接口、业务接口、监听接口。。。
  • 任务有严格的执行顺序

UML

TaskTemplate:定义抽象出来公共方法,来供子类实现,execute方法决定了公共方法执行的顺序

TaskHandler:任务,通过run方法调用execute方法,每个子类实现该方法,实现getOrder接口,决定了任务的执行顺序

HandlerChain:注入任务list,控制任务顺序,正序或者倒序等等

小结

例子举得是最简单的,如果业务较为简单,不用这种方式实现也可以,复杂的相似于本文的的业务场景,可以考虑上面的方法。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

女汉纸一枚

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值