重构-项目中存在过多的if-else语句

本文探讨如何在编程中减少if-else语句的使用,提升代码的优雅性和可维护性。通过优先判断条件、引入策略模式以及结合策略模式、工厂和单例模式,实现更简洁的逻辑处理。作者提供了一个支付回调场景的实例,展示了改造前后的代码对比,突显了改进方法的优势。

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

转载:
优雅的替换if-else语句
https://blog.csdn.net/fanrenxiang/article/details/104955363

场景

日常开发,if-else语句写的不少吧??当逻辑分支非常多的时候,if-else套了一层又一层,虽然业务功能倒是实现了,但是看起来是真的很不优雅,尤其是对于我这种有强迫症的程序"猿",看到这么多if-else,脑袋瓜子就嗡嗡的,总想着解锁新姿势:干掉过多的if-else!!!本文将介绍三板斧手段:

  • 优先判断条件,条件不满足的,逻辑及时中断返回;
  • 融入策略模式;
  • 策略模式+工厂+单例模式,锦上添花;

接下来先附上一段很久以前自己写的业务代码,核心逻辑就是在支付回调中根据用户购买的价格包赋予用户对应的权益(VIP视频会员天数+抽奖机会次数)。我的天,太多if-else了……(看不清楚可以点击图片放大)

在这里插入图片描述

策略+工厂+单例

接下来使用"工厂类+单例"来给代码加点料:

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值