java 开发多if else 代码优化

前言:

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

java 开发多if else 代码优化_第1张图片

                                                                      (图-1)

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

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

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

java 开发多if else 代码优化_第2张图片

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

 

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

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

1.定义父类或接口

java 开发多if else 代码优化_第3张图片

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

java 开发多if else 代码优化_第4张图片

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

java 开发多if else 代码优化_第5张图片

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

 

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

1.通过spring上下文获取bean

java 开发多if else 代码优化_第6张图片

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

 3.实现通用接口并向spring注册beanjava 开发多if else 代码优化_第7张图片

 4.业务实现

java 开发多if else 代码优化_第8张图片

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

 

你可能感兴趣的:(日常积累,java,简单工厂模式,设计模式,后端,spring)