《重构》第一章学习笔记
什么是重构
重构是这样一个过程,在不改变代码外在行为的前提下,对代码做出修改,以改进程序的内部结构。
为何要进行重构
改善软件结构的设计
可以去除一些老旧,落后,容易出现Bug或者影响性能的设计模式。
使代码能够更容易被自己和其他开发者理解
抽取逻辑,迁移方法,改变封装等方法可以简化代码,相对于冗长的一长段代码块,相信开发者会更倾向于浏览几段简短的代码块。
重构过程中有可能发现潜在BUG
对代码逻辑的理解在重构中不断加深,可能会在重构中发现遗留下来的Bug。
便于以后更改需求和添加新需求
每次重构不仅是对代码的优化,更是对业务的加深理解。重构也能够提高整体程序的可维护性和扩展性。
与一般常见的“软件会慢慢腐烂”的观点相反,重构会让软件更加年轻,健壮。
重构的大致流程
1. 建立可靠的测试环境
好的测试是重构的根本,花时间建立一个优良的测试机制是完全值得的,因为当你修改程序时,好的测试会提供必要的安全保障。
2. 理解代码的逻辑
想要重构程序或一段代码,充分理解其逻辑当然时必要的,如果连它的逻辑和目的都不知道,又何谈优化重构呢。
3. 分解和重组代码
拆分存在大段代码的方法,换成成几个简短易于理解的小方法,冗长复杂的代码块太难让开发者理解,代码块愈小,代码的功能就愈容易管理,代码的处理和移动也就愈轻松。
4. 方法迁移,改变类的封装结构
根据方法的功能,将其移至更加适合它的类中,可以降低程序的耦合度,提高程序的可维护性。
5.提升程序的扩展性
合理的运用多态,继承,可以提升程序的扩展性,以后若有新的需求添加进来时也会更加容易快速。
总结
花费时间去进行重构是值得的,降低代码的耦合,提升代码的简洁性和可读性等,重构都是一项很有效的措施,但是过多次的重构是否可以表示程序从一开始就存在很大的问题呢,如果从设计阶段就制定下严格有效的开发规范,开发者严格遵守规范,那么也就不用花费过多额外的时间进行重构。