1、什么情况下要重构?
当你有空的时候就可以对你的代码进行重构。而不是等到代码烂到一定程度的情况下,才开始动手去重构代码。(从心理学的角度看,当代码烂到一定的程度,人们会出现一种“破窗理论”,破罐子破摔,由于技术的更新,人员的流动,于是不断有人往项目里面对切烂代码,最终的结果就是不得不去重写项目)。所以建议人们树立一种持续重构的思维,不断地优化代码。
2、为什么要重构?
2.1 从公司的角度
一个可维护性高的项目,维护成本是很低的。如果一个项目里面都是烂代码,公司招了一大批工程师进来,但是又看不效果,最后不得不重写项目。这是公司最不愿意经历的事情。
2.2 从个人发展的角度
相信大部分程序员都是业务开发的程序员,技术不断更新,每天不断地堆砌业务代码(个人觉得,不断地去翻译需求,这些业务代码,对个人的技术发展是没什么用的,正所谓,有人用二年学到的知识,干了十年就是这种情况)。持续重构,会不断地加强你对设计思想,设计原则,设计模式,代码规范的理解深度。更重要的是给自己成就感。
3、到底重构什么?
3.2 大规模重构
就是指对系统,模块,类与类之间的关系进行重构(个人觉得,职位比较低的情况,可以先从类与类之间这个方面入手,毕竟职位没上去,是不会给机会你进行实践对系统,模块的重构)难度比较大,耗时比较多。
3.3 小规模重构
就是指对类,函数,代码规范级别的重构。难度比较小,耗时比较少
4、如何重构?
大规模高层次的重构难度比较大,需要组织、有计划、分阶段地小步快跑,时刻让代码处于一个可运行的状态,而小规模地层次的重构,因为影响范围小,改动耗时短,所以只要你愿意并且有时间,随时随地都可以去做