一种小范围的、可控的方式重构代码。基于这些暴露的问题，人们会进一步的检查设计和代码中是否还存在别的代码异味，然后再做进一步的重构。从负责重构的开发者的角度来看，代码异味可以启发何时重构，如何重构。因此，可以说代码异味推动着重构的进行。该术语似乎由肯特·贝克于90年代后期，在WardsWiki上首次使用。且自从在"Refactoring. Improving the Design of Existing Code".被提到过，使用率就大大的提高。代码异味同时也是敏捷开发者常用的术语。什么是，或者不是代