Refactoring: Improving the Design of Existing Code
As the application of object technology - particularly the Java programming language - has become commonplace, a new problem has emerged to confront the software development community. Significant numbers of poorly designed programs have been created by less experienced developers, resulting in applications that are inefficient and hard to maintain and extend. Increasingly, software system professionals are discovering just how difficult it is to work with these inherited, 'non-optimal' applications. For several years, expert-level object programmers have employed a growing collection of techniques to improve the structural integrity and performance of such existing software programs,. Referred to as 'refactoring', these practices have remained in the domain of experts because no attempt had been made to transcribe the lore into a form that all developers could use until now. In this book the author bre.