Head First Design Patterns: Building Extensible and Maintainable Object-Oriented Software Paperback $79.99