This book is about the marriage of refactoring-the process of improving the design of existing code-with patterns, the classic solution to design problem.