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一致
java 开发多if else 代码优化相关推荐
- java开发怎么优化代码,代码优化,该如何处理
当前位置:我的异常网» Java Web开发 » 代码优化,该如何处理 代码优化,该如何处理 www.myexceptions.net 网友分享于:2014-08-19 浏览:0次 代码优化 pu ...
- 深入理解Java虚拟机——程序编译与代码优化 (转)
2019独角兽企业重金招聘Python工程师标准>>> 深入理解Java虚拟机--程序编译与代码优化 (转) 博客分类: java 一早期(编译期)优化 1概述 Java语言的&qu ...
- 初级Java开发与架构之间的差距不仅仅是开发时间
转载自 初级Java开发与架构之间的差距不仅仅是开发时间 一.基础篇 JVM JVM内存结构 堆.栈.方法区.直接内存.堆和栈区别 Java内存模型 内存可见性.重排序.顺序一致性.volatile ...
- java开发工程师转正述职报告
Java开发工程师转正述职报告 时光匆匆,时光从指间很快流走.我于2018年12月进入公司做java开发工作.试用期的三个月,不仅仅是对我考核的时间,也是我磨合和适应融合公司的时间.初来乍到,又是第一 ...
- Alibaba大牛常读的10本Java实战书籍,(Java开发进阶必备书单),可以白嫖了
关乎于程序员,除了做项目来提高自身的技术,还有一种提升自己的专业技能就是:多!看!书! 毕竟,书是学习的海洋呢!So,Java程序员你们准备好了吗?双手奉上Java程序员必读之热门书单. 在下面这 1 ...
- 阿里大人都在读的10本Java实战书籍,Java开发进阶必备书单
关乎于程序员,除了做项目来提高自身的技术,还有一种提升自己的专业技能就是:多!看!书! 毕竟,书是学习的海洋呢!So,Java程序员你们准备好了吗?双手奉上Java程序员必读之热门书单. 在下面这 1 ...
- JAVA开发(JAVA架构师成长之路)
从一个最基础的JAVA开发人员成为JAVA架构师,需要经历8层能力的进阶. 第一阶段:熟悉JAVA基础语法,学会写各种if else和流程语句,熟练使用各种数据类型,集合.能依葫芦画瓢,模仿别人的代码 ...
- JAVA开发技能要求:
初级JAVA开发: 1.掌握HTML/CSS/JavaScript等WEB开发技术,深入了解WEB/AJAX的工作原理,有JQuery,AngularJS,Bootstrap等框架. 2.掌握数据库设 ...
- 阿里P8推荐的10本Java实战书籍,Java开发进阶必备书单
关乎于程序员,除了做项目来提高自身的技术,还有一种提升自己的专业技能就是:多!看!书! 毕竟,书是学习的海洋呢!So,Java程序员你们准备好了吗?双手奉上Java程序员必读之热门书单. 在下面这 1 ...
最新文章
- Boring counting HDU - 3518 (后缀数组)
- MOCTF-火眼金睛
- java操练之求两数最大公约数的两种算法思路
- 深度学习(二)theano学习笔记(1)环境搭建
- java nextintln_Java对正则表达式的支持(二)
- TensorFlow:实战Google深度学习框架(三)深层神经网络
- dell服务器怎么看硬件状态,从DELL 2950和DELL R710看服务器硬件
- 不是所有的程序员都适合转管理
- html表单与python交互,HTML表单不能与python一起使用
- SQL注入:5、SQL盲注
- 灵活地横向扩展:从文件系统到分布式文件系统
- 翻遍知乎1000多个高赞回答,我找到了这7本计算机圣经
- svn服务器设置忽略文件夹,如何使用SVN忽略目录?
- linux acl权限是什么意思,Linux ACL是什么意思
- Android中使用Webview SSL 自签名CA证书安全校验方案
- 校招选择题汇总【图形推理(1)】含答案解析
- 51单片机的UART应用
- 西北农林科技大学计算机考研好考吗,西北农林科技大学考研好考吗?
- linux的双系统修复工具下载,EasyBCD(系统引导修复工具)
- C语言之——左旋字符串
热门文章
- python读取excel的公司名称信息,并爬虫获取公司的经营范围信息,回填到excel中
- 安卓8.0下的应用安装
- android 批量安装apk,如何一键批量安装APP应用apk安装包?
- ABAP 设置鼠标光标
- 如何衡量和分配广告渠道?
- Android加载图片导致内存溢出(Out of Memory异常)
- [积水成渊]asp.net中HiddenField的使用
- 微信小程序学习(三):在微信开发者工具中,使用WeUI前端美化框架,微信小程序
- 1、大道至简的数据处理工具-(Microsoft Power Query入门)
- docker push latest 和 保存历史版本