Refactoring中文翻译为:重构。此词的引入主要是面向对象软件行业所提出的一种改进软件设计方案。
这方面最经典的著作是:【美】Martin Fowler著的《Refactoring: Improving the Design of Existing Code(重构——改善既有代码的设计)》他提出的观点是过去的软件设计是类似GOF《设计模式》一书中所描述的,在前期优良设计的前提下构建软件。但是由于软件发展本身不可能是完美的,因此改进的过程是持续且必然的,重构的方式将作为改善软件设计的一种手段和方式,更加地拥有现实意义。作者提到《设计模式》一书可以作为软件设计的目标,而重构将成为实现目标的手段。