Refactoring is a technique to restructure code in a disciplined way.
Code that smells. :)
Refactoring is a technique to restructure code in a disciplined way.
A change to the system that leaves its behavior unchanged, but enhances some nonfunctional quality - simplicity, flexibility, understandability, performance.
Like Design Patterns, there is a long list of well-known refactorings: