Contents of This Book
This book in organized into 17 chapters. The organization of the chapters follows the development of the sample system. It diverts in Chapter 3 to discuss general development issues and in Chapter 6 to examine object-oriented design. The sample system development ends in Chapter 14. Chapter 15 describes a real-life system designed using prefactoring guidelines, and Chapter 16 talks about the design of an antispam system.
Here is a detailed description of the chapter contents:
Chapter 1, Introduction to Prefactoring
This is an introduction to the facets of prefactoring.
Chapter 2, The System in So Many Words
We meet Sam, the client, to get an overall view of the desired system. We discuss creating a shared vocabulary for communication, and we use some extreme abstraction.
Chapter 3, General Development Issues
We look at some general issues in developing a system. This includes the big picture, interface contracts, communicating with code, simplicity, dealing with errors, and the spreadsheet conundrum.
Chapter 4, Getting the Big Picture
We continue talking with Sam to get a clearer understanding of the overall requirements—the big picture. Then we start to create a design for a system.
Chapter 5, Got Class?
We take our system outline and develop the implementation classes. We explore how single or multiple classes can represent concepts.
Chapter 6, A Few Words on Classes
We look at object-oriented design in general. The class maxims of cohesion and coupling are ...