As a programmer you are eager to learn about different patterns and their properties. You want to know where, why and how to use them (and when not). Instead of taking a close look at these book patterns, you desire to see them in their native environment (real world applications).With Head First Design Patterns you can also learn the proper usage of patterns in JAVA API and different ways to exploit Java's built-in pattern hold up through your own codes.
More importantly you gain a clear understanding of the undisclosed language of Design Patterns so that you can take a hold of your own with your co-worker while he casually highlights his stunningly clever use of Façade, Proxy, Command and Factory. You may go through a paradox of your understanding of why Singleton isn't as easy as it sounds, how the Factory is sometimes misunderstood or on the real relationship between Façade, Adapter and Decorator.