核心概念

重构(refactor)

/ ree-FAK-tor /

重构(refactor)是改善代码的结构——让它更清晰、更简单、更好改——但不改变它实际做的事。同样的输入、同样的输出,只是内部变得更整洁了。

这是在收拾厨房,而不是改菜谱。端出来的菜味道一模一样,但现在刀具都在你预期的位置,台面擦干净了,下一个人来做饭不用满屋子翻找。

好的重构是小而持续的:给一个含糊的变量改个名,把一个巨型函数拆成几个清楚的小函数,删掉没人用的代码。正因为行为不该改变,一套扎实的测试就是你的安全网——重构后它们若依然全部通过,你就知道自己没有悄悄弄坏什么。

// before: what does `d` even mean?
function f(d){return d*86400000}
// after: same result, now readable
function daysToMs(days){return days * 24 * 60 * 60 * 1000}

一样的计算,意图更清楚——这就是重构。

重构途中忍住别顺手加新功能——要么改结构,要么改行为,别一口气两件事一起来。

又称
refactoringclean up coderestructure