在读了福勒的"重构"一段时间之后,我仍然经常发现自己"我应该用更小的步骤做到这一点." - 即使我没有破坏我的代码.
小步骤重构是安全的,但成本时间.这是速度和风险之间的权衡 - 我试图在选择我的重构方式时具有战略性.
尽管如此:大多数时候我正在以更大的步骤进行重构.如果我参考福勒的"力学"部分并比较我的工作方式,我可能会发现我经常一步向前迈出两到五步.这并不意味着我是一名重构大师.我的代码可能会停留5到60分钟或者无法编译.
您是否以较小的步骤重构并尝试以较短的频率生成完整的代码?而且:你成功做到了这一点吗?
Martin Fowler似乎倾向于采用小型渐进式重构方法.然而,在读完他的书后,他偶尔会做一些激烈的步骤,但只能通过单元测试来备份代码.
重构是一种用于改进现有代码库设计的受控技术.它的本质是应用一系列小的行为保持变换,每个变换"太小而不值得做".然而,这些变换中的每一个的累积效应是非常显着的.通过小步骤完成它们可以降低引入错误的风险.您还可以在执行重组时避免系统损坏 - 这允许您在较长时间内逐步重构系统.- 马丁福勒