Preface
1 The Inevitable Bloat
Bloat Drivers
Options
Five Principles for Fighting Bloat
Summary
2 Keep It Simple
The Value of Simplicity
Process and Simplicity
Your Safety Net
Summary
3 Do One Thing, and Do It Well
Understanding the Problem
Distilling the Problem
Layering Your Architecture
Refactoring to Reduce Coupling
Summary
4 Strive for Transparency
Benefits of Transparency
Who's in Control?
Alternatives to Transparency
Reflection
Injecting Code
Generating Code
Adanced Topics
Summary
5 Your Are What You Eat
Golden Hammers
Understanding the Big Picture
Considering Technical Requirements
Summary
6 Allow for Extension
The Basics of Extension
Tools for Extension
Plug-In Models
Who Is the Customers?
Summary
7 Hibernate
The Lie
What Is Hibernate?
Using Your Persistent Model
Elaluating Hibernate
Summary
8 Spring
Whaat Is Spring?
Pet Store:A Counter-Example
The Domain Model
Adding Persisternce
Presentation
Summary
9 Simple Spider
What Is the Spider?
Examining the Requirements
Planning for Development
The Design
The Configuration Service
The Crawler/Indexer Service
The Search Service
……
10 Extending JPetStore
11 Where Do We Go from Here?
Bibliography
Index