调优(二) 减少if语句的使用

来源:互联网 发布:哪呢儿软件下载 编辑:程序博客网 时间:2024/06/07 22:06

程序中减少if语句的使用:
注: if语句通常会让代码更加负载,但这不代表要完全抛弃if语句

1、 if语句的问题
a. 通常出现if语句的代码很容易越改越糟
b. 复制时会有问题,即if语句缺失domain的概念
c. 开发者必须在头脑中模拟执行实际情况,造成脑细胞浪费

2、 替代if语句的方案:
1). 布尔参数(Boolean Params)
背景: 有方法在修改行为时,使用了boolean: create (String boolean) { if ( boolean ) {} else {}}
解决方案: 将一个方法拆分成两个新的方法
create1() {} create2(){}

2). 使用多态(Polymorphism)
背景: 根据类型switch时: switch(type){case 1:…; case 2:…; case 3:…}
解决方案: 使用多态,添加新类型时,只需要增加相关行为

3). NullObject/Optional
背景: 当外部请求理解代码库的主要用途时,回答”查一下null的情况”
解决方案:

4). 将内联语句转为表达式
背景: 在计算布尔表达式时,包含if语句: if (boolean) {if (boolean) {…}}
解决方案:将if语句树合成单个表达式: boolean1 && boolean2

5). 给出对应策略
背景: 在调用一些其他代码时,无法确保路径是成功的
解决方案:针对被调用代码,给出应对策略

原创粉丝点击