Wednesday, February 6, 2008

Review: Head First Design Patterns

Head First Design Patterns


Topics:
  • Design Principles
  • Design Patterns
  • OOP

Summary:

This books teaches the reader about basic concepts behind several common design principles and patterns. Most chapters begin by creating a scenario that involves a development team being given a task to add functionality to an application. It then walks the reader through implementation options by showing example code in Java, while pointing out pros and cons. This ends up identifying a design principle and showing how a specific design pattern can be applied to the problem at hand. The last couple of chapters transition the reader from working with simple, ideal situations to real world expectations of working with design patterns.


Audience:

Any level developer who has a grasp of OOP and is looking to improve their development skills through design principles and patterns.


Pros:
  • Perfect for an introduction to design patterns and principles (and more advanced literature, e.g. GoF text).
  • Examples do an excellent job of showing the benefits of applied principles and patterns.
  • Plenty of humor to keep the reader interested.
  • Suggestions on where to go after reading this book.

Cons:
  • Goes off-topic to explain details of how RMI works during its discussion of the Proxy pattern, a waste of 10-20 pages.
  • While additional patterns are briefly covered in an appendix, I'd like to see a few of those included in chapters of their own.

Recommendation:


If you've got a grasp on OO concepts, but don't really know much about design patterns, this is the perfect place to start. This book is easy to read and does an excellent job of not just explaining the concepts, but proving them with examples as well.

No comments: