【重构】重构步骤与重构案例
合格的重构:
- 消除味道:一个重构应该是从识别一个坏味道(Bad Smell)开始,以消除一个坏味道结束,任何不以消除坏味道为目标的重构都是耍流氓。
- 始终工作:即重构定义中的“在不改变软件可观察行为的前提下”,说白了就是重构过程不能破坏甚至改变软件外在功能。
- 持续集成:不需要为重构单建分支,重构过程可以做到Feature开发在同一分支上持续集成持续交付。
- 随时中止:例如一个方法重命名,需要修改100个调用点,当改到50个的时候有个紧急的Feature,我可以随时暂停重构,立即切换到Feature开发上,且不需要回滚已做的重构。
- 断点续传:还是上边的例子,假如我已经完成了紧急Feature的开发,可以随时继续之前的重构,完成剩下50个调用点的重命名。
- 过程可逆:对于重构,经常有人会问:你怎么保证重构就会更好而不是更坏呢?重构的伟大就在于他跳出了对错之争,将关注点放到如何快速平滑安全的变化上,当然也包括反向重构。所以我的回答是:无法保证,但是我可以一分钟就重构回来。如果仔细看,《重构》书里的所有重构手法都是双向的,比如“Extract Method”和“Inline Method”。
重构手法:
基于IDEA的重构实战视频:https://www.bilibili.com/video/BV1dB4y1i7ZJ/?spm_id_from=333.337.search-card.all.click 基于《重构》书籍
重构还是重写?聊聊 Java 代码臭味与重构技巧:https://www.bilibili.com/video/BV1hK4y1v7rU?from=search&seid=8446977210386113029
TDD实质分为3个步骤: 红绿灯
红色: 编写失败的测试方案; 绿色:添加代码满足要求; 重构:提高代码质量
代码坏味道与重构样例: https://refactoring.guru/refactoring/smells
代码坏味道大类、样例及解决思路:来自《重构与模式》
案例
去除多余的if else:工厂类、枚举、命令模式、规则引擎、策略模式:https://pdai.tech/md/develop/refactor/dev-refactor-if-else.html
Code Smell 重构你的日常代码-圈复杂度高多层嵌套 https://developer.aliyun.com/article/1074328?spm=a2c6h.12873581.technical-group.dArticle1074328.43957e04NUDzG3
是什么让一段20行代码的性能提升了10倍 https://developer.aliyun.com/article/1009355?spm=a2c6h.12873581.technical-group.dArticle1009355.43957e04NUDzG3
理论与实践:如何写好一个方法 https://developer.aliyun.com/article/1024543?spm=a2c6h.12873581.technical-group.dArticle1024543.43957e04NUDzG3
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· winform 绘制太阳,地球,月球 运作规律
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 上周热点回顾(3.3-3.9)