java 开发多if else 代码优化

前言:

在开发中你是否为下图这样的代码感到稍许苦恼,如果没有请您绕开继续划水。

(图-1)

在开发中,我应用到了三种模式尝试让他们变的美观,低耦合,易维护。

方式一:业务结构相似的赋值/取值

如上图,传值判断和赋值相似,可以采用定义枚举来封装代码

回头再看完业务中的代码,变成了短短三行,达到了封装的效果。

方式二:简单工厂模式优化

同样的,还是图-1所示,如果每个if else中的业务需要分别处理,无法进行方式一一般封装的情况下,if else较多,处理逻辑复杂的情况下,代码只会越写越长,可读性和耦合性不甚理想,有时会难以维护,这是可以把单个if else 代码封装成一个业务类去处理,看代码:

1.定义父类或接口

2.子类继承父类或实现接口的方法

3.工厂类匹配相应业务类

4. 封装后业务模块单独处理,易于维护;

方式三:工厂模式+java特性+spring

1.通过spring上下文获取bean

2.添加含通用方法的接口

3.实现通用接口并向spring注册bean

4.业务实现

值得注意的是,这里注入的bean名称要和templateName一致

经验分享 程序员 微信小程序 职场和发展