支付系统中的设计模式04:改进的策略与外观模式

本文介绍了如何在支付系统中应用改进的策略模式和外观模式,以应对不同结算方式带来的返利需求。通过策略模式,避免了大量的if...else,实现了T+1和T+7结算策略,并通过外观模式进一步封装,减少了代码的耦合度,提供了简洁的调用接口。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

随着业务越做越大,交易量大了,老板觉得可以用一些变相的方法增加一些收入了,同时也有利于用户,做到双赢。这很好理解,“往地上戳一棍子都能冒出油来”,谁能扛得住这种诱惑呢?

于是,老板就提了这样的需求:

支付系统需要根据不同的结算模式,返利给账户:

1、选择T+1结算方式的,给账户返利订单金额的0.1%;

2、选择T+7结算方式的,给账户返利订单金额的0.3%。

嗯~,你可能会想:这不就是简单的if...else嘛,直接写代码就好了。然鹅,老板如果继续心血来潮,想搞T+2、T+3、......、T+8、T+9、......、T+30咋办?改代码吗?或者跟老板说不能这么干吗?别傻了,也别自找没趣了!所以,这时候,你是否还记得之前说过的方法——「如果下次再看见有很多分支条件都是实现同样一种功能的时候,就可以立即考虑是否可以使用策略模式来优化代码」。

所以呢,咱继续套用策略模式。

但这一次,会有不同吗?

先写代码看。

按照策略模式的套路,应该先有一个结算策略接口:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值