重构最重要的原则是小步快跑 甚至小到你觉得这一步没有必要 这样做的意义是可以随时停下来 不影响用来的功能正常运行 如果出错 由于步子小 你很容易能找到哪里修改出现了错误 重构之前一定要写测试 如果没有测试你将不知道自己的重构有没有破坏原来的功能。
测试可以使用BDD的测试形式 测试不是说为每一个函数 每一个类写一个单元测试 应该为那些 public api 写测试,为使用场景写测试。想把测试写好 可以看看 那本测试驱动开发 tdd by example 重构强烈建议看看 重构第二版 注意看每一个重构小步骤 每一个小步骤都是为了可以让重构随时停下来 而不影响原来的功能