Key Points

  • Program changes are a fact of life both during initial development and after initial release.

  • Software can either improve or degrade as it's changed. The Cardinal Rule of Software Evolution is that internal quality should improve with code evolution.

  • One key to success in refactoring is learning to pay attention to the numerous warning signs or smells that indicate a need to refactor.

  • Another key to refactoring success is learning numerous specific refactorings.

  • A final key to success is having a strategy for refactoring safely. Some refactoring approaches are better than others.

  • Refactoring during development is the best chance you'll get to improve your program, to make all the changes you'll wish you'd made the first time. Take advantage ...

Get Code Complete, 2nd Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.