本文提纲: 为什么我们写的代码都是if-else? 这样的代码有什么缺点? 是否有优化的方法?如何重构? 异常逻辑处理型重构方法 状态处理型重构方法 为什么我们写的代码都是if-else? 程序员想必都经历过这样的场景:刚开始自己写的代码很简洁,逻辑清晰,函数精简,没有一个if-else, 可随着代 ...
分类:
其他好文 时间:
2021-01-12 11:15:18
阅读次数:
0
shell脚本中根据端口号kill对应的应用进程 在做项目时候,因为后端代码不规范,过一段时间就要重启项目,因为手头忙别的事儿,对项目代码重构比较费时间,就写了个重启的脚本,凑合下、 shell中通过端口号查询pid port=8080 #根据端口号查询对应的pid pid=$(netstat -n ...
分类:
系统相关 时间:
2020-09-17 12:50:39
阅读次数:
42
核心:继承应该是在存在逻辑关系的环境中使用,而不是出于方便的目的。没有意义的继承用委派替代【用组合替代继承】,这样可以避免类中增加额外没有意义的接口。 代码演示: 1、代码 using System; using System.Collections.Generic; using System.Li ...
分类:
其他好文 时间:
2020-09-08 20:51:16
阅读次数:
55
任何Java开发人员的必备技能 现在,让我们一起探索这个Java开发人员路线图,并找出应该学习哪些工具,框架,库和API。 1.工具 路线图工具部分分为两个主要部分。首先,IDE是您的主要工具,它几乎可以完成您所要求的一切,例如编译,运行,调试,分析,测试,比较文件和代码,重构等等。 第二部分是构建 ...
分类:
编程语言 时间:
2020-07-23 22:44:58
阅读次数:
77
核心:该方法和提升方法刚好相反,提升方法核心是将通用方法提升到基类中,下降方法的核心则是将类的特有方法放在所属类的内部。 还是延用上篇中手机的例子,摇一摇可以进行编辑内容的删除这个功能只有IPhone手机有,而Galaxy手机不具备,那这个功能就是IPhone所特有的功能,那么该方法就不能像发送短信 ...
分类:
其他好文 时间:
2020-07-01 12:41:25
阅读次数:
56
最近一直在重构应用中心代码,在重构的过程中,想到了之前看的一本书 叫代码重构之道,之前看的时候会觉得有些不理解,但是还是记了其中的知识点 通过这次重构,对重构又有了更新的认识 重构,就是在不影响现有的业务情况下,修改代码的行为,这里修改代码的过程中为了使整个业务更加清晰,在熟悉原有的逻辑的情况下,重 ...
分类:
其他好文 时间:
2020-06-03 20:19:35
阅读次数:
64
前言 在计算机编程中,单元测试是一种软件测试方法,通过该方法可以测试源代码的各个单元功能是否适合使用。为代码编写单元测试有很多好处,包括可以及早的发现代码错误,促进更改,简化集成,方便代码重构以及许多其它功能。使用 Java 语言的朋友应该用过或者听过 Junit 就是用来做单元测试的,那么为什么我 ...
分类:
其他好文 时间:
2020-05-31 11:07:28
阅读次数:
105
一、 重构的概念 重构(Refactoring)是以改善代码质量为目的的代码重写 使其软件的设计和架构更加合理 提高软件的扩展性和维护性 二、 重要的差异(代码实现与代码重构的区别) 1. 代码实现:按照设计编程实现,重点在于功能的实现。代码实现时不考虑架构的好坏,只考虑功能的实现 2. 代码重构: ...
分类:
其他好文 时间:
2020-04-18 21:20:36
阅读次数:
76
记一次完整的系统业务代码重构(1)——why 0.为什么烂 优秀的代码优秀的出奇一致,烂代码却烂的千奇百怪。至于原因嘛,无非如下几种: 1.迭代和变更需求快,比翻书变脸还快,而且没有统一规划和为未来预留考虑。 2.公司人员流动快,代码换了一届又一届的主人,七朝元老都没站出来,三朝元老的代码都弱爆了。 ...
分类:
其他好文 时间:
2020-04-03 16:45:21
阅读次数:
81
LZ最近一直在研究虚拟机源码,可惜目前还只是稍微有一点点头绪,无法与各位分享,庞大的JAVA虚拟机源码果然不是一朝一夕能搞定的,LZ汗颜。本次我们抛开JAVA虚拟机源码这些相对底层的东西,LZ来与各位探讨一下几个代码重构的小技巧,这些内容部分来自于书籍当中,部分来自于LZ维护项目当中的一些实践经验。如果猿友们曾经用过这种手法,也不妨参与到文章的留言当中,将你的小心得、小体会共享与他人,也可以拿来冲
分类:
其他好文 时间:
2020-03-14 22:10:19
阅读次数:
59