Tuesday, September 23, 2008

Refactoring Introduction

The problem you always get with software is that over time it becomes harder and harder to change it, harder and harder to add new functionality, and harder and harder to fix bugs in it. This is because the internal structure of the program becomes worse and worse, making it more and more difficult to make all these changes. It is as though the program has become unfit. Refactoring is about how to keep the program in a healthy state so that it is as easy as possible to change it, so that it is as easy as possible to add new functionality, and so that it is as easy as possible to find and fix bugs in it. If the natural tendency of software is to become unfit, refactoring is about how to fight that tendency and to keep the program as healthy as possible.

See my book The Refactoring Workout for more on refactoring.

No comments: