Goodreads helps you keep track of books you want to read.
Start by marking “Head First Design Patterns” as Want to Read:
Head First Design Patterns
Enlarge cover
Rate this book
Clear rating
Open Preview

Head First Design Patterns

(Head First Series)

4.28  ·  Rating details ·  7,000 ratings  ·  395 reviews
You're not alone.

At any given moment, somewhere in the world someone struggles with the same software design problems you have. You know you don't want to reinvent the wheel (or worse, a flat tire), so you look to Design Patterns--the lessons learned by those who've faced the same problems. With Design Patterns, you get to take advantage of the best practices and experie
Paperback, 638 pages
Published November 4th 2004 by O'Reilly Media (first published January 1st 2004)
More Details... Edit Details

Friend Reviews

To see what your friends thought of this book, please sign up.

Reader Q&A

To ask other readers questions about Head First Design Patterns, please sign up.

Be the first to ask a question about Head First Design Patterns

Community Reviews

Showing 1-30
Average rating 4.28  · 
Rating details
 ·  7,000 ratings  ·  395 reviews

More filters
Sort order
Start your review of Head First Design Patterns
Maxim Chetruşca
Nov 20, 2013 rated it it was amazing
"If it walks like a duck and quacks like a duck, then it might be a turkey wrapped with a duck adapter..."
Nov 30, 2007 rated it it was amazing
Shelves: work
Easily the best introduction to design patterns I've seen. If you're new to object-oriented design or new to design patterns, this is the first (but definitely not the only) book you should buy.

Computer books are so often textbooks written in the high-falutin' language of hooded academics. There's nothing wrong with that, but such language is next to useless for the uninitiated. O'Reilly's Head First series breaks the textbook mold with verve. I find Design Patterns to be, by far, the most succe
Nov 03, 2013 rated it it was amazing
Shelves: programming
I tried to start my design pattern education with the classic GOF's book. Well, it ended with the first few pages and became a coffee cup coaster. Sacrilege, I know, but I have to be honest. I also tried another Head First book, on another topic and while okay, it just didn't speak to me. I only tried this book after a Microsoft Partner I respected recommended it. Wow. It is probably one of the best introductory technical books I've read in my 20 years of programming. The whimsical and technical ...more
Jeffery Moulton
Jan 07, 2011 rated it it was amazing
Shelves: computers
This is one of the best technical books I've ever read. It changed my world as a programmer and what I thought was a good technical book. The topic is very important for any developer that works with object-oriented programming (OOP) and the book presents a complicated topic in a fun, readable way (with lots of pictures!).

I highly recommend this book to any developer, no matter how experienced, and especially those who struggle getting through the long, boring technical books out there and are l
Knute Snortum
Jan 07, 2012 rated it really liked it
Head First Design Patterns is a great way to get a good overview (and some meat) about design patterns. This will interest programmers and computer scientists the most, but as you learn near the end of the book, design pattern were first created by an architect! So if you're interested is solving problems or how to break apart a problem into pieces that are more easily solved, this book may interest you.

If you're like me -- a software developer who's been around a while -- you will have noticed
Mar 23, 2020 rated it it was amazing
Head First Design patterns is probably one of the best OOP books I've ever read. If you are new to design patterns, this book is a great start. Each chapter focuses on a design pattern and contains real-life examples and scenarios to help you understand the concept easier. Do not consider this book as a complete pattern catalog. Some of the famous patterns like Builder or Visitor aren't covered, so you need to read the Gang of four book to learn about them.
Siddhant Shrivastava
Aug 23, 2018 rated it it was amazing
Entertaining and edifying at the same time! This is one of the best Head First books out there. Read this even if you are not going to be doing any software engineering for sometime since this is the kind of book that stays at the back of your mind when you are trying to write your first few non-toy object-oriented programs.
Nick Craske
Mar 07, 2019 rated it it was amazing
I know have super powers.
Shriraj Nayak
Dec 17, 2018 rated it really liked it
I would recommend the book to learn design patterns. Design pattern concepts are explained with examples. This could be used as introduction to the design patterns.
Temur Tchanukvadze
Nov 04, 2019 rated it really liked it

Finally finished reading. I like Freeman's sense of humor and the examples he included in the book. But it's kinda bloated with these jokes. It's easy to read and would help newcomers to get started in Design Patterns. I would recommend to check out Dive Into Design patterns afterward.
not read it completely, just the first 3 see the taste of head first series. although it was helpful, but i am comfortable with a book like C# design patterns.
Jakub Dziworski
Dec 16, 2016 rated it really liked it
Way easier to follow than the original "Design Patterns", but some trivial topics were given too much explanation, which made the book a bit too long.
David S
Oct 20, 2018 rated it really liked it
Should be a must read for young developers even though the book repeats itself a lot sometimes.
John Chilton
Jul 08, 2010 rated it really liked it
I am going to give this book a review even though I am only part of the way through, in part because I think it belongs on my highly-recommend list. The original GOF patterns book is good, is a classic, and should probably be on your bookshelf. This however is much better book on patterns for the typical developer, the content is more accessible and is more up-to-date. Moreover this book has a great attitude and is a lot of fun to read.
Feb 14, 2020 rated it it was amazing
The books introduces a lot of most common design patterns and most importantly demonstrates why the design pattern should be applied by solving sample design problems, in a very easy-to-follow way with a lot of exercises. A certain recommendation for anyone who wishes to learn design patterns for the first time in a systematic way.

It's the biggest book that I've ever completed and I read it from introduction to appendix.

I am really glad that I read the Introductions, as it explains why Head Firs
Yash Sharma
May 25, 2020 rated it really liked it
As expected from any book in the Head First Series, this is beginner friendly and a fun read. Do not let the number of pages discourage you, since most of them are filled with memes, pictures, code examples and class diagrams instead of boring text. The information gets redundant at times and you would want to skim through many of the pages. The only downside is that only 12 design patterns are covered in detail and remaining are described in brief in the appendix. Still this can be your go-to b ...more
Jordi Casadevall franco
Mar 31, 2019 rated it it was amazing
Shelves: computer-science
A must read for every coder that don't want to spend his whole life doing sphagetti and unmaintenable code.

Simplicity upon patterns, patterns upon chaos.
Jun 12, 2013 rated it it was amazing
Must read even for experienced programmers. Explained in the very practical and attractive way.

Someone has already solved your problems.

Favor composition over inheritance.

How many design meetings have you been in that quickly degrade into implementation details?

Knowing the OO basics does not make you a good OO designer.

Remember, code should be closed (to change) like the lotus flower in the evening, yet open (to extension) like the lotus flower in the morning.

A class should have on
Apr 21, 2012 is currently reading it
If you want to get up to speed on object oriented programming techniques, but your mind can't handle pages & pages of dense technical prose, then this is for you!

Written & laid out in a comic book style similar to the "... For Beginners" books (Marx For Beginners, Zen For Beginners etc, see the technical explanations are reassuringly well spaced out between brain-friendly pictures and diagrams.

The text itself is in the form of a (rather goofy) story about a sof
Nov 24, 2013 rated it really liked it
great intro to patterns for noobs like me.
Much more readable than the Gang of Four book.

A bit outdated - lacking functional design patterns and over relies on mutability, especially in the State Pattern.
Everything in the Composite Pattern chapter could be implemented more cleanly and elegantly using the Visitor Pattern. Proxy pattern is pretty outdated too. Then again, the gang of four book is pretty old too at this point.

Code uses pretty old version of Java - Doesn't have enums or generics, to
Farsan Rashid
Jul 26, 2018 rated it really liked it
My rating lies somewhere between (4.5 - 4.7). Can be a fantastic reading for someone looking for the first design pattern book. As mentioned numerous times it is a must read book for software developers and truly it is.

If it is so good why not 5 stars?

- Often the contents are too repetitive. Though authors claim it is intentional so that patterns stick in readers mind sometimes I felt like repetition blocked fluency.
- In some cases much simpler examples could have been used to describe patterns
Matt Hooper
Jun 03, 2007 rated it it was amazing
Recommends it for: Software developers looking to become OO experts
This is an outstanding book and is actually quite fun to read!

I don't personally own it but we had a copy in out restroom at work and I'd read through it periodically. I read the classic gang of four patterns book prior to this one and I must say that this one is probably better of the two for most people, especially more inexperienced developers. The focus of this book is less on a pattern language and more on how to use object oriented languages to solve real problems and while not building a
Dec 13, 2007 rated it it was amazing
I'd always been a bit worried about the head first series - they look a bit like astrophysics for idiots - but having read the patterns book I'm impressed, I feel like a lot more has sunk in that the last patters book I read (C# Design Patterns, which was over-obsessed with swim meets and felt like the author had been forced to use C# at gunpoint - I wouldn't recommend it). I also liked getting to do a crossword puzzle at the end of most chapters. It's Java oriented but only gets deeply into Jav ...more
Oct 03, 2009 rated it liked it
Meh, this was fine, but not as tight as Head First SQL - The Head First formula doesn't scale super-well to a book of this size, and the segments are too disconnected. It's still good at giving you the gist of the concept, but the topic of design patterns seems to lend itself to a catalog format that Head First doesn't handle very well. Got me thinking, but I won't be ready to talk intelligently about patterns until I get a more traditional book.

Actually, I just saw that this is only 31 pages lo
Jan 30, 2009 rated it did not like it
The book picks a totally artificial application (Simulated Ducks!) and then proceeds to extol the virtues of OO. The important point is glossed over in the first few pages, the majority of the duck application is NOT oop. It's procedural and does not benefit from the OOP patterns. Frankly, I am sick of the promises of OOP. From where I sit in the trenches it has it's place but it doesn't work for everything.
Vladimir Rybalko
Mar 04, 2013 rated it it was amazing
Shelves: programming
It is an excellent book. I do not want to be liar, but I knew a little about patterns before. But my knowledge came to a new level thanks to this book. And it is true. Author write about difficult things using simple words. I can say with all responsibility that it is a definite plus. Humor life examples help to better understand material. The book should be a great start guide for programmers who decide to start learning a basic of software architecture.
Khang Nguyen
Jan 19, 2016 rated it liked it
This was the official textbook for an CS course at my university. I liked the book for its sense of humor. The book also gave me hints to explain complicated programming problem to my fellow students. The book used Java to give examples, which is a plus for those who hate GoF for using C++/SmallTalk. I hated the book for its superficial comparison between patterns. As a textbook, it failed to address numerous design pattern pitfalls. An easy read, easy learn book for kids.
Sep 21, 2009 rated it it was amazing
An amazing display of learning theory in practice. Not only did I learn design patterns from this book (which I tried to do in the past but didn't have the patience for the Gang of Four book), but I learned a lot about teaching and presenting based on the brain-friendly techniques used to keep your attention. This book really is amazing!
Savio Sebastian
Jan 12, 2016 rated it it was amazing
It helped me understand why there were so many abstractions in JAVA code. quite useful for a beginner who's probably taking up code to maintain and does not understand why the original author wrote something the way he/she did. But it was a little too verbose - and a bit distracting as well with their examples.
Nawar Youssef
Apr 23, 2016 rated it really liked it  ·  review of another edition
Shelves: computer-sw-hw
I have read only few chapters and then I stopped for personal and career reasons. I think this is one of the best book for someone to get to introduced into design patterns. The way it's constructed forces the brain to work and learn in a kind of fun way. So it could be so helpful for people who get bored from reading technical books specially beginners.
« previous 1 3 4 5 6 7 8 9 10 11 12 next »
topics  posts  views  last activity   
Like this book? Join the O'Reilly Media Fan Page 2 36 Apr 29, 2013 03:36PM  

Readers also enjoyed

  • Clean Code: A Handbook of Agile Software Craftsmanship
  • Design Patterns: Elements of Reusable Object-Oriented Software
  • Code Complete
  • Refactoring: Improving the Design of Existing Code
  • Effective Java
  • The Pragmatic Programmer: From Journeyman to Master
  • Patterns of Enterprise Application Architecture
  • Test Driven Development: By Example
  • The Clean Coder: A Code of Conduct for Professional Programmers
  • Java Concurrency in Practice
  • Working Effectively with Legacy Code
  • JavaScript: The Good Parts
  • Effective C++: 55 Specific Ways to Improve Your Programs and Designs
  • Introduction to Algorithms
  • Thinking in Java
  • Clean Architecture
  • Domain-Driven Design: Tackling Complexity in the Heart of Software
  • Spring in Action
See similar books…

Goodreads is hiring!

If you like books and love to build cool products, we may be looking for you.
Learn more »

Other books in the series

Head First Series (1 - 10 of 44 books)
  • Head First 2D Geometry
  • Head First HTML with CSS & XHTML
  • Head First Java
  • Head First JavaScript
  • Head First Software Development
  • Head First Web Design
  • Head First C#
  • Head First Ajax: A Brain-Friendly Guide
  • Head First PHP & MySQL
  • Head First EJB

News & Interviews

Dystopias, alien invasions, regenerated dinosaurs, space operas, multiverses, and more, the realm of science fiction takes readers out of this ...
250 likes · 259 comments
“When you design, solve things in the simplest way possible. Your goal should be simplicity, not 'How can I apply a pattern to this problem.” 1 likes
“A remote proxy acts as a local representative to a remote object.” 0 likes
More quotes…