程序员如何做好代码重构?

简介: 代码重构重构就是在不改变软件系统外部行为的前提下,改善它的内部结构。重构不是重写,它们的区别你可以理解为,重构是修复代码,大框架不变。重写是扔掉原来的,重新设计框架。

代码重构重构就是在不改变软件系统外部行为的前提下,改善它的内部结构。重构不是重写,它们的区别你可以理解为,重构是修复代码,大框架不变。重写是扔掉原来的,重新设计框架。

为什么需要重构?

因为代码不是个静态的东西,他会随着时间变得越来越复杂。

什么时候需要重构?

当你发现以下几种情况时,应该重构。

一、代码不符合代码规范。

二、有新的实现方式具有更高的效率。

三、你看完代码后觉得应该重构了。

重构是一种习惯,而不是一个任务。

注意事项

一、重构应该是日常行为,应该在每天的任务里预留一部分时间,即可以用来应对临时需求,也可以用来做重构。

二、不要在重构的代码的时候,添加新的功能。也许你觉得两个正好在一起,就一起做了。那会引发更多问题。

三、在开始重构之前,要先做好测试。既保证重构之前代码可运行的,也能保证出现问题后第一时间发现。

四、小步骤重构:将字段从一个类移动到另一个类,拆分方法,重命名变量。重构通常涉及对许多局部进行的修改,这些局部修改最终会导致更大范围的修改。如果保持小步骤,并在每个步骤之后进行测试,就能避免冗长的调试。

五、重构之前要备份,一旦出现问题或者有其他重要事情,还可以还原。

最简单的重构

一、重命名

好的命名能传达准确的信息,如果你发现命名不能传达准确的信息,那么就修改它。

二、提取重复代码

你以为你已经修复问题了,但后面发现问题还在,就是因为有很多重复代码,导致其他地方调用的方法并没有修改。

三、提炼函数

一个函数过长会显得十分复杂,方法和类都应该遵守单一职责原则。

关于重构的更多信息,同学们可以去读《重构》这本书,书里讲的内容非常系统。

目录
相关文章
|
设计模式 自然语言处理 程序员
普通程序员要成为高级程序员,一定要学会重构
普通程序员要成为高级程序员,一定要学会重构
69 0
|
6月前
|
监控 安全 程序员
程序员是如何看待“祖传代码”的?
程序员是如何看待“祖传代码”的?
47 0
|
6月前
|
设计模式 程序员
代码可读性问题之培养和提高团队对代码可读性的重视,如何解决
代码可读性问题之培养和提高团队对代码可读性的重视,如何解决
|
8月前
|
算法
代码重构:优化之道
代码重构:优化之道
|
设计模式 新零售 供应链
一文教会你如何写复杂业务代码
这两天在看零售通商品域的代码。面对零售通如此复杂的业务场景,如何在架构和代码层面进行应对,是一个新课题。针对该命题,我进行了比较细致的思考和研究。结合实际的业务场景,我沉淀了一套“如何写复杂业务代码”的方法论,在此分享给大家。
28679 1
一文教会你如何写复杂业务代码
|
设计模式 程序员 开发者
程序员在开发中必经之路:重构代码
众所周知,程序员在开发过程中接手前人代码,或者接手公司外购项目的代码等情况的时候,都有想要重构代码的冲动,与其这样说,不如说程序员只要是接手不是自己亲自写的代码都想重构!俗话说得好:一百个程序员脑中有一百个编程思维,不同程序员就算是开发相同功能的程序,一定会有不同的实现方式,而且代码格式和实现方式也肯定是不一样的,这样就给程序的代码重构留下了伏笔。
166 1
|
算法 数据格式
|
消息中间件 JavaScript 小程序
用1个月重构了同事写的烂代码,我总结出了15条重写烂代码的经验!
用1个月重构了同事写的烂代码,我总结出了15条重写烂代码的经验!
|
IDE NoSQL Java
我来告诉你代码重构有什么好处
根据两本关于重构的书籍的作者 Martin Fowler的说法 “重构是改变软件系统的过程,它不会改变代码的外部行为,但会改善其内部结构。这是一种清理代码的严格方法,可以最大限度地减少引入错误的机会。本质上,当你重构时,你是在改进编写代码后的设计。”
258 0
|
数据库
高质量代码优化!谈谈重构项目中if-else代码的几点建议
本篇文章探讨了代码的重构以及优化,主要针对代码中大量的条件判断if-else语句问题提出了具体的优化建议。介绍了优化if-else语句的几种有效的方法,包括switch,接口interface以及数据库实现对条件语句进行的优化。
184 0
高质量代码优化!谈谈重构项目中if-else代码的几点建议