程序员成长第十六篇:代码重构
代码重构重构就是在不改变软件系统外部行为的前提下,改善它的内部结构。重构不是重写,它们的区别你可以理解为,重构是修复代码,大框架不变。重写是扔掉原来的,重新设计框架。
为什么需要重构?
因为代码不是个静态的东西,他会随着时间变得越来越复杂。
什么时候需要重构?
当你发现以下几种情况时,应该重构。
一、代码不符合代码规范。
二、有新的实现方式具有更高的效率。
三、你看完代码后觉得应该重构了。
重构是一种习惯,而不是一个任务。
注意事项
一、重构应该是日常行为,应该在每天的任务里预留一部分时间,即可以用来应对临时需求,也可以用来做重构。
二、不要在重构的代码的时候,添加新的功能。也许你觉得两个正好在一起,就一起做了。那会引发更多问题。
三、在开始重构之前,要先做好测试。既保证重构之前代码可运行的,也能保证出现问题后第一时间发现。
四、小步骤重构:将字段从一个类移动到另一个类,拆分方法,重命名变量。重构通常涉及对许多局部进行的修改,这些局部修改最终会导致更大范围的修改。如果保持小步骤,并在每个步骤之后进行测试,就能避免冗长的调试。
五、重构之前要备份,一旦出现问题或者有其他重要事情,还可以还原。
最简单的重构
一、重命名
好的命名能传达准确的信息,如果你发现命名不能传达准确的信息,那么就修改它。
二、提取重复代码
你以为你已经修复问题了,但后面发现问题还在,就是因为有很多重复代码,导致其他地方调用的方法并没有修改。
三、提炼函数
一个函数过长会显得十分复杂,方法和类都应该遵守单一职责原则。
关于重构的更多信息,同学们可以去读《重构》这本书,书里讲的内容非常系统。
版权声明: 本文为 InfoQ 作者【石云升】的原创文章。
原文链接:【http://xie.infoq.cn/article/a53f8d663aec5dafa97dee2c6】。
本文遵守【CC-BY 4.0】协议,转载请保留原文出处及本版权声明。
评论