重构的一点体会

简介: 这几天在重构系统,用四个字形容我的心情就是“吐血而亡”,其实只是因为权限控制的细化,导致大量地方需要修改(原先比较混乱),索性重构这部分功能,如果整个系统重构,估计会让我疯狂的。还不如推倒重写舒服。
  这几天在重构系统,用四个字形容我的心情就是“吐血而亡”,其实只是因为权限控制的细化,导致大量地方需要修改(原先比较混乱),索性重构这部分功能,如果整个系统重构,估计会让我疯狂的。还不如推倒重写舒服。可见重构动作不宜过大,应该小步小步、日积月累的不断重构。现在回过头来体会 《重构—改善既有代码设计》这本书的知识点,觉得作者的一系列观点真是切入要害。 系统开发、维护本来就要时时重构,但是如果一个系统要重构的地方相当多、重构动作大的时候,说明这个系统已经问题重重了,也反映了系统架构不到位,前期没有合理的重构。就像一位病重的病人了。这时要做的就是“下猛药”或是完全抛弃它。 如果把系统类比成人的话,随着时间推移,系统需要不断扩充它的功能,体现它的价值,但是呢,它有可能生病,有可能是外因或内因导致,如果这时候定期做体检(代码Review,代码审查),把小病治愈的话(系统重构),那么它的寿命也就能延长(系统的生命周期延长),但是如果患上各种小病,而且病情持续恶化的话,这个时候如果来医治(重构)的话,药物治疗的功效就要打折扣了,因为可能这个药会影响其它病情,自然医治困难了。
相关文章
|
11月前
|
设计模式 算法
重构,避免重构误区
重构,避免重构误区
40 0
|
设计模式 程序员 开发者
程序员在开发中必经之路:重构代码
众所周知,程序员在开发过程中接手前人代码,或者接手公司外购项目的代码等情况的时候,都有想要重构代码的冲动,与其这样说,不如说程序员只要是接手不是自己亲自写的代码都想重构!俗话说得好:一百个程序员脑中有一百个编程思维,不同程序员就算是开发相同功能的程序,一定会有不同的实现方式,而且代码格式和实现方式也肯定是不一样的,这样就给程序的代码重构留下了伏笔。
157 1
|
设计模式 新零售 供应链
一文教会你如何写复杂业务代码
这两天在看零售通商品域的代码。面对零售通如此复杂的业务场景,如何在架构和代码层面进行应对,是一个新课题。针对该命题,我进行了比较细致的思考和研究。结合实际的业务场景,我沉淀了一套“如何写复杂业务代码”的方法论,在此分享给大家。
28619 1
一文教会你如何写复杂业务代码
|
IDE NoSQL Java
我来告诉你代码重构有什么好处
根据两本关于重构的书籍的作者 Martin Fowler的说法 “重构是改变软件系统的过程,它不会改变代码的外部行为,但会改善其内部结构。这是一种清理代码的严格方法,可以最大限度地减少引入错误的机会。本质上,当你重构时,你是在改进编写代码后的设计。”
237 0
|
设计模式 算法
重构代码设计精要
重构代码设计精要
|
程序员
程序员如何做好代码重构?
代码重构重构就是在不改变软件系统外部行为的前提下,改善它的内部结构。重构不是重写,它们的区别你可以理解为,重构是修复代码,大框架不变。重写是扔掉原来的,重新设计框架。
203 0
程序员如何做好代码重构?
|
数据库
高质量代码优化!谈谈重构项目中if-else代码的几点建议
本篇文章探讨了代码的重构以及优化,主要针对代码中大量的条件判断if-else语句问题提出了具体的优化建议。介绍了优化if-else语句的几种有效的方法,包括switch,接口interface以及数据库实现对条件语句进行的优化。
167 0
高质量代码优化!谈谈重构项目中if-else代码的几点建议
|
Cloud Native 算法 前端开发
如何面向对象做好重构?|83行代码
由阿里云云效主办的2021年第3届83行代码挑战赛已经收官。超2万人围观,近4000人参赛,85个团队组团来战。大赛采用游戏闯关玩儿法,融合元宇宙科幻和剧本杀元素,让一众开发者玩得不亦乐乎。本文作者:83行代码优秀参赛选手。
329 0
如何面向对象做好重构?|83行代码
|
供应链 设计模式
一文教会你如何写复杂业务的代码
简单的介绍下业务背景,零售通是给线下小店供货的B2B模式,我们希望通过数字化重构传统供应链渠道,提升供应链效率,为新零售助力。阿里在中间是一个平台角色,提供的是Bsbc中的service的功能。
8323 0