Buy new:
-43% $40.00$40.00
Delivery October 10 - 15
Ships from: Amazon Sold by: LUNALLC44
Save with Used - Good
$14.00$14.00
Delivery Tuesday, October 8
Ships from: Amazon Sold by: S&H Assorted Goods
Download the free Kindle app and start reading Kindle books instantly on your smartphone, tablet, or computer - no Kindle device required.
Read instantly on your browser with Kindle for Web.
Using your mobile phone camera - scan the code below and download the Kindle app.
Head First Design Patterns: A Brain-Friendly Guide 1st Edition
There is a newer edition of this item:
Purchase options and add-ons
What’s so special about design patterns?
At any given moment, someone struggles with the same software design problems you have. And, chances are, someone else has already solved your problem. This edition of Head First Design Patterns―now updated for Java 8―shows you the tried-and-true, road-tested patterns used by developers to create functional, elegant, reusable, and flexible software. By the time you finish this book, you’ll be able to take advantage of the best design practices and experiences of those who have fought the beast of software design and triumphed.
What’s so special about this book?
We think your time is too valuable to spend struggling with new concepts. Using the latest research in cognitive science and learning theory to craft a multi-sensory learning experience, Head First Design Patterns uses a visually rich format designed for the way your brain works, not a text-heavy approach that puts you to sleep.
- ISBN-100596007124
- ISBN-13978-0596007126
- Edition1st
- PublisherO'Reilly Media
- Publication dateNovember 30, 2004
- LanguageEnglish
- Dimensions8 x 1.4 x 9.25 inches
- Print length692 pages
Customers who bought this item also bought
Editorial Reviews
About the Author
Elisabeth Robson is co-founder of Wickedly Smart, an education company devoted to helping customers gain mastery in web technologies. She's co-author of four bestselling books, Head First Design Patterns, Head First HTML and CSS, Head First HTML5 Programming, and Head First JavaScript Programming.
Bert Bates is a 20-year software developer, a Java instructor, and a co-developer of Sun's upcoming EJB exam (Sun Certified Business Component Developer). His background features a long stint in artificial intelligence, with clients like the Weather Channel, A&E Network, Rockwell, and Timken.
Kathy Sierra has been interested in learning theory since her days as a game developer (Virgin, MGM, Amblin'). More recently, she's been a master trainer for Sun Microsystems, teaching Sun's Java instructors how to teach the latest technologies to customers, and a lead developer of several Sun certification exams. Along with her partner Bert Bates, Kathy created the Head First series. She's also the original founder of the Software Development/Jolt Productivity Award-winning javaranch.com, the largest (and friendliest) all-volunteer Java community.
Product details
- Publisher : O'Reilly Media; 1st edition (November 30, 2004)
- Language : English
- Paperback : 692 pages
- ISBN-10 : 0596007124
- ISBN-13 : 978-0596007126
- Item Weight : 2.72 pounds
- Dimensions : 8 x 1.4 x 9.25 inches
- Best Sellers Rank: #158,864 in Books (See Top 100 in Books)
- #58 in Computer Systems Analysis & Design (Books)
- #62 in Object-Oriented Design
- #185 in Software Development (Books)
- Customer Reviews:
About the authors

Elisabeth Robson is currently co-founder of Wickedly Smart (wickedlysmart.com) where she is creating new brain-friendly learning products.

Eric is described by Head First series co-creator Kathy Sierra as “one of those rare individuals fluent in the language, practice, and culture of multiple domains from hipster hacker, corporate VP, engineer, think tank.” Professionally, Eric recently ended nearly a decade as a media company executive—having held the position of CTO of Disney Online at The Walt Disney Company. Eric is now devoting his time to WickedlySmart, a startup he co-created with Elisabeth Robson.
By training, Eric is a computer scientist, having studied with industry luminary David Gelernter during his Ph.D. work at Yale University. His dissertation is credited as the seminal work in alternatives to the desktop metaphor, and also as the first implementation of activity streams, a concept he and Dr. Gelernter developed.
In his spare time, Eric is deeply involved with music; you’ll find Eric’s latest project, a collaboration with ambient music pioneer Steve Roach, available on the iPhone app store under the name Immersion Station.
Eric lives with his wife and young daughter on Bainbridge Island. His daughter is a frequent vistor to Eric’s studio, where she loves to turn the knobs of his synths and audio effects. Eric’s also passionate about kids education and nutrition, and looking for ways to improve them.

Discover more of the author’s books, see similar authors, read book recommendations and more.
Customer reviews
Customer Reviews, including Product Star Ratings help customers to learn more about the product and decide whether it is the right product for them.
To calculate the overall star rating and percentage breakdown by star, we don’t use a simple average. Instead, our system considers things like how recent a review is and if the reviewer bought the item on Amazon. It also analyzed reviews to verify trustworthiness.
Learn more how customers reviews work on AmazonCustomers say
Customers find the book easy to understand and well-structured. They say it explains something really well, is specific for learning, and makes for a handy reference after reading. Readers also appreciate the humor and code examples. However, some find the writing style not conventional and the spelling errors distract too much.
AI-generated from the text of customer reviews
Customers find the book easy to understand, a fun and easy read. They say it offers simple concepts that can be easily applied to other languages. Readers appreciate the pace and tone of the text.
"...However, the book is so thorough and intuitive, that I decided to do all of the examples in C#..." Read more
"...Said another way, the Visitor Pattern is trivial to implement in languages that support multiple dispatch...." Read more
"First and foremost, I love this book. It's very well written and it gets its points across in plain English...." Read more
"...What this book DOES DO, is offer a SIMPLE, VERY EASY TO UNDERSTAND, VERY INFORMATIVE, AND ENTERTAINING way to LEARN the most useful design patterns...." Read more
Customers find the book explains things well, is practical, and specific for learning. They say it makes for a handy reference after reading, and has hands-on examples understandable by anybody who can read code. Readers also mention the novel approach to learning Java that they have ever seen.
"...It's a lot of fun, and chock full of great information and examples that you'll be able to apply to your own projects right away." Read more
"...I think the two books work well together, with Head First Design Patterns working as a more accessible introduction to design patterns, and the..." Read more
"...There is a good use of humor, pictures, abstract analogies, and concrete examples to help convey the lessons of each chapter and while this is like..." Read more
"...It's an easy to read but still very technical and precise tutorial on design patterns and OO design strategies...." Read more
Customers find the book extremely helpful for explaining design patterns in understandable language. They appreciate the exposition style, integration of general design principles like programming, and elegant explanations. Readers also mention the examples are simple enough that they don't get bogged down in a lot of them. Overall, they say it offers a unique approach to look at design patterns.
"...This book covers those and many, many more, in a completely involving and revolutionary way...." Read more
"Head First Design Patterns is an excellent introductory text for design patterns, plus object oriented design in general...." Read more
"...There is a good use of humor, pictures, abstract analogies, and concrete examples to help convey the lessons of each chapter and while this is like..." Read more
"...The book shines in its presentation of the patterns, even the ones we already "know," as extrapolations of basic OO design principles...." Read more
Customers find the humor in the book entertaining. They say it makes the book interesting, funny, and enjoyable to read. Readers also mention the authors brilliantly manage to keep them engaged.
"...It's a lot of fun, and chock full of great information and examples that you'll be able to apply to your own projects right away." Read more
"...There is a good use of humor, pictures, abstract analogies, and concrete examples to help convey the lessons of each chapter and while this is like..." Read more
"...They also have a lot of quirky, fun stuff in the book. It is, as another reviewer mentioned, almost insufferably cute...." Read more
"...a SIMPLE, VERY EASY TO UNDERSTAND, VERY INFORMATIVE, AND ENTERTAINING way to LEARN the most useful design patterns...." Read more
Customers find the code examples in the book great and annotated along the way. They say it's a good tool for software engineers and the best technical book they have read. Readers also mention the book has depth, including motivation, sample code, and exercises.
"...most common design patterns in great depth, including motivation, sample code, exercises, as well as answering many of the questions a reader is..." Read more
"...for explaining design patterns in understandable language, with great code examples that are annotated along the way; they also preempt questions..." Read more
"...The code examples are relevant and fun to do, as are the exercises...." Read more
"...They have a lot of code given in the text which is nice for people (like me) who are not fully fluent in Java...." Read more
Customers find the book fun, easy to understand, and a smart purchase. They also say it carries a lot of value in a small space.
"...It's fun, easy to understand, and carries a ton of value in a small space." Read more
"...I was able to locate this one at a reasonable price, the seller shipped it quickly, and I am happy with the purchase...." Read more
"...to get this book for my computer science course and it was well worth the money...." Read more
"...Apart from that, the book is awesome. Value for money." Read more
Customers find the book hard to read and verbose. They also mention it has spelling errors, punctuation errors, and grammar errors. Readers say the layout of the text is crazy.
"...If you read through it, it will be clear that it is too verbose and it will not work...." Read more
"...Yes, there is humor (some actually humorous) and the presentation is intentionally sophomoric, but I found that presented this way, it keeps your..." Read more
"...But for professionals and busy people, this is way too verbose...." Read more
"...Just as bad is how verbose the code is - no real programmer would put up with a line like: Proxy.newProxyInstance(classname.getClass().getClassLoader..." Read more
Customers find the images in the book quite small, unreadable, and squashed on the Kindle edition. They also say the text is printed in tiny fonts.
"...However, further in, the images with sample code are too tiny and light to read (either with daylight or backlight). -1 star...." Read more
"...All the code is given as images and all the images are quite small making it difficult to read...." Read more
"...pages are filled with filler pictures and that leaves a lot of text printed in tiny fonts. Reading the book really strains the eyes." Read more
"...is great, sadly the formatting for Kindle is terrible, many of the pictures are very small, many of the tables or pictures don't look right, I had..." Read more
Reviews with images
All images are squashed on the Kindle edition, affecting readability - get paper version instead
-
Top reviews
Top reviews from the United States
There was a problem filtering reviews right now. Please try again later.
In any event, one area where I knew I was lacking was a formal understanding of design patterns. I was in the middle of a fairly large enterprise application, and while I was fully versed in Object Oriented Programming (and had even taught it in the past), I realized that everyone we were hiring out of college "spoke" a different language than I did, talking about singletons, factories, MVC, etc.
This book covers those and many, many more, in a completely involving and revolutionary way. It's basically designed with the Java language in mind, but I'm a .Net developer, never having learned Java. However, the book is so thorough and intuitive, that I decided to do all of the examples in C# (close enough to Java that in many cases, there's almost a 1-to-1 relationship between my home-grown example and the one in the book.
So for me, the book's benefit was two-fold: exposure to both design patterns and the Java language. In many cases, I was able to ".Net-ify" the examples to take advantage of specific features of .Net. A good example was in the Observer pattern where you have an object that changes over time, and other objects ("observers") need to be aware of this change. The book presents a language-agnostic approach, where the observable object registers all of its observers, and cycles through them notifying each one that it has changed. With .Net, it's much easier (and more appropriate) to implement this using events, where the observable object doesn't care who's watching, it just announces "I've changed!" and each observer can then decide how to handle that event.
But I digress... ultimately, I just threw myself into this book, doing every example as written, and then modifying those examples to function with the .Net mentality. I even did all the pencil exercises, puzzles, etc. It's all part of the learning process, right?
So, in a nutshell, if you need to learn design patterns, get this book. It's a lot of fun, and chock full of great information and examples that you'll be able to apply to your own projects right away.
I bought this book for my 17-year-old nephew -- who is in the second year of a high school computer programming course -- as a companion to the Gang of Four book. I think the two books work well together, with Head First Design Patterns working as a more accessible introduction to design patterns, and the Gang of Four book serving as a reference for later on. He definitely finds the Head First book easier to read as a beginner. Even I, with a college degree in Computer Science and 20 years in the software development industry, find it valuable, at least as a review.
For those wondering about which edition they will get, I bought this book through Amazon and received the tenth anniversary edition, updated for Java 8. The main difference is that it takes advantage of the newly-introduced Lambda Expressions. Although the book uses Java throughout, C# developers will have little if any trouble with the examples. In many cases, the code is identical.
Slight nitpick: Some of the patterns in the appendix are given short shrift in the interest of space. For example, the section on the Visitor Pattern leaves out the important fact that one of the main motivations for the pattern is to overcome the limitations of languages that support only single dispatch. Said another way, the Visitor Pattern is trivial to implement in languages that support multiple dispatch. For more detail on these design patterns, I recommend the Gang of Four book, or online resources.
I bought this book in October of 2018 and received the 2014 updated version (which I guess just updated some of the Java specific references for Java 8). The code examples are done in Java, but if you know C# (or really any object-oriented language), the meat of the code examples will be easily readable to you. If you have experience with any object-oriented language, then a lot of the concepts will also be very familiar to you. Even when they go into a 1-2 page discussion about a Java specific thing, you can still just view it through a conceptual lens and follow along with the discussion.
There is a good use of humor, pictures, abstract analogies, and concrete examples to help convey the lessons of each chapter and while this is like a 500-600 page book, I burned through it in a single weekend because it was not only insightful and instructive, but it was also a very entertaining read.
If you're trying to learn more about design patterns and incorporate them into your process, definitely add this book to your arsenal. It's great for learning and good for a quick reference guide as well.
Top reviews from other countries
Highly recommended!
Reviewed in the Netherlands on May 18, 2024
As a programmer this book is must have. Cover major DESIGN PATTERNS in very creative manner ani content is engaging aa its not written in conventional ways.
Paper quality is somewhat good, main issue is with the font, it is very small, they could have used the margin space for increase the font size. As they left luch of margin than needed that's the only issue.























