编程技巧之-表驱动法

最近准备观摩下代码大全2(CodeComplete)这本书,在译序中介绍了这本书适合谁看,该怎么看的问题。其中有第一条就是:

  • 初级程序员,请先看第18章表驱动法:将复杂的逻辑判断转换为查询表,从而简化代码的编写和维护。

于是我就跳转到18章看了看。

看完后被这种技巧所震撼到,因为这个技巧跟我的想法不谋而合。

先来看下所谓的表驱动法

// 使用if else 来进行逻辑区分
if (x < 10 && x > 0) {
	doSmall();
} else if (x < 100) {
	doMedium();
} else {
	doBig();
}
复制代码
// 使用表驱动法
executeTable[x].execute();
复制代码

可以看到ifElse被简化成了一种优雅的做法,对于代码的可维护性大大提升,不在害怕因为ifElse判断的增多而导致代码的可读性和维护性下降,而且该做法也充分利用了接口的特性。

转载于:https://juejin.im/post/5bee96c36fb9a049af6cd682

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值