第5章 重构(Refactoring)
重构:在不改变代码外在行为的前提下对代码做出修改,以改进代码的内部结构的过程。
软件模块的三项职责:
- 第一个职责是它运行起来所完成的功能。
- 第二个职责是它要应对变化。
- 第三个职责是要和阅读它的人进行沟通。对该模块不熟悉的开发人员应该能够比较容易地阅读并理解它
重构就好比用餐后对厨房的清理工作。第一次你没有清理它,你用餐是会快一点。但是由于没有对盘碟和用餐环境进行清洁,第二天做准备工作的时间就要更长一点。这会理一次促使你放弃清洁工作。的确,如果跳过清洁工作,你今天总是能够很快的用完餐,但是脏乱在一天天的积累。最终,你得花费大量的时间去寻找合适的烹饪器具,凿去盘碟上已经干硬的食物残余,并把它们洗擦干净,以使它们适合于烹饪。包是天天要吃的,忽略掉清洁工作并不能真正加快做饭速度。