Head First Object-Oriented Analysis and Design
A Brain Friendly Guide to OOA&D
Publisher: O'Reilly Media
Final Release Date: November 2006
Pages: 636

"Head First Object Oriented Analysis and Design is a refreshing look at subject of OOAD. What sets this book apart is its focus on learning. The authors have made the content of OOAD accessible, usable for the practitioner."

Ivar Jacobson, Ivar Jacobson Consulting

"I just finished reading HF OOA&D and I loved it! The thing I liked most about this book was its focus on why we do OOA&D-to write great software!"

Kyle Brown, Distinguished Engineer, IBM

"Hidden behind the funny pictures and crazy fonts is a serious, intelligent, extremely well-crafted presentation of OO Analysis and Design. As I read the book, I felt like I was looking over the shoulder of an expert designer who was explaining to me what issues were important at each step, and why."

Edward Sciore,Associate Professor, Computer Science Department, Boston College

Tired of reading Object Oriented Analysis and Design books that only makes sense after you're an expert? You've heard OOA&D can help you write great software every time-software that makes your boss happy, your customers satisfied and gives you more time to do what makes you happy.

But how?

Head First Object-Oriented Analysis & Design shows you how to analyze, design, and write serious object-oriented software: software that's easy to reuse, maintain, and extend; software that doesn't hurt your head; software that lets you add new features without breaking the old ones. Inside you will learn how to:

  • Use OO principles like encapsulation and delegation to build applications that are flexible
  • Apply the Open-Closed Principle (OCP) and the Single Responsibility Principle (SRP) to promote reuse of your code
  • Leverage the power of design patterns to solve your problems more efficiently
  • Use UML, use cases, and diagrams to ensure that all stakeholders arecommunicating clearly to help you deliver the right software that meets everyone's needs.

By exploiting how your brain works, Head First Object-Oriented Analysis & Design compresses the time it takes to learn and retain complex information. Expect to have fun, expect to learn, expect to be writing great software consistently by the time you're finished reading this!

Table of Contents
Product Details
About the Author
Recommended for You
Customer Reviews


by PowerReviews
oreillyHead First Object-Oriented Analysis and Design

(based on 9 reviews)

Ratings Distribution

  • 5 Stars



  • 4 Stars



  • 3 Stars



  • 2 Stars



  • 1 Stars




of respondents would recommend this to a friend.

Reviewed by 9 customers

Sort by

Displaying reviews 1-9

Back to top



By B

from Washington


  • Easy to understand
  • Helpful examples


  • Not comprehensive enough

Best Uses

  • Student

Comments about oreilly Head First Object-Oriented Analysis and Design:

I was and am still a novice. I found this book useful but not 5* quality. It's good at glossing over concepts and pointing the reader in the right direction, but don't expect anything beyond that. I had to do my own research outside the book to gain a better yet still incomplete understanding of all the ideas the book presents. It also feels that there's a lot of fluff in the book and the whole 700+ pg. book could have been condensed down to 200-300pgs.

I'm iffy on recommending this book. For an absolute beginner, it can be very useful, but so can the internet which is free and much more comprehensive.The only thing the book has over the internet is that all the information is presented in an orderly manner in a singular place.

It's also quite annoying that some segments on the book exclusively focus on Windows 8, and if you're running 7 or lower, tough luck..you're up the creek without a paddle.


Where is the book?

By Sf Nicole

from Sebastopol, CA

About Me Developer, Educator

Verified Buyer



    • Difficult to understand

    Best Uses

      Comments about oreilly Head First Object-Oriented Analysis and Design:

      See Service Delivery Comments. I did try using the electronic version but it seems not to have any structure jumping from place to place in a disconnected fashion. So I ordered the hard copy so I could try and fix the flow problems.

      (8 of 8 customers found this review helpful)


      Jump into OOP without drowning

      By Rudedog2

      from New York City, USA

      About Me Designer, Developer

      Verified Reviewer


      • Concise
      • Easy to understand


        Best Uses

        • Intermediate
        • Novice

        Comments about oreilly Head First Object-Oriented Analysis and Design:

        This book is an excellent "get your feet wet" introduction to Object Oriented Programming. It is a perfect sequel to "Head First Design Patterns". Do not purchase one without the other.

        While not a reference book, it is a solid book for those who are interested in a less professorial and rigorous teaching of OOP principles. Light on theory. Heavy on just having fun while doing serious work.

        Like the complimentary book "Design Patterns", this book was originally written a while back for JAVA developers, and so it naturally includes JAVA examples throughout the book exclusively. This should not be a deterrent for anyone using other languages, as all of the examples are now available for download in both C# and VB.

        It is a step by step guide to developing a small, simple Object Oriented application. It demonstrates different approaches at each crossroad along the way to the finish line. The instinctive non-OOP approach is tried and tested until it starts growing complex, only to be replaced by an intuitive OOP approach.

        By the end of the book, the example application is complete and is actually an advanced example integrating the most commonly used basic Design Patterns. This book provides clear insight into subjects that most find too abstract and complex to understand.

        (2 of 3 customers found this review helpful)


        A bit different for a tech book

        By Evan Heidtmann

        from Undisclosed

        Comments about oreilly Head First Object-Oriented Analysis and Design:

        This is the first book that I've read from the "Head First" series. I liked the approach that this book takes. It breaks up the concepts with real world examples and fun stuff like crossword puzzles. One of the other things I liked about this book was the way that it visually breaks up the usually monotonous instructional books with diagrams, funny pictures and humor. Sometimes instructional tech books can be so dry and dull. This book is definitely not that!

        One word of advice, all the examples of the book are written in Java so it would be good to have a bit of experience with Java in order to really understand what the book is presenting.

        (1 of 2 customers found this review helpful)


        Easy to Understand

        By Anonymous

        from Undisclosed

        Comments about oreilly Head First Object-Oriented Analysis and Design:

        I found this book to be quite an interesting and enjoyable experience considering the weighty topic and tendency for the material to be pretty dry. The Examples are well thought through and pointed. I would suggest it for anyone interested in OOP Design.

        (6 of 6 customers found this review helpful)


        Good Introduction to OOA&D

        By Kirk Holbrook, Manager, Maine Flash Platform User Group

        from Maine

        Comments about oreilly Head First Object-Oriented Analysis and Design:

        This is a good introduction to object oriented analysis and design (OOA&D), as well as use cases and class modeling. The authors lead the reader through several different scenarios (some of them progressively tied together and some of them standalone). The "build-it-up and then tear-it-apart and analyze it" methods seem to fit well for whom I suspect are the target audience for the book: developers who know how to program, but maybe don't have the best skills in needs analysis up-front.

        Head First Object-Oriented Analysis and Design is the first (and currently only) book that I've read in the Head First series. The concepts are easily understood and there is a minimum of prior knowledge of Object Oriented Design required as a pre-requisite for reading the book. There's a good bit of humor and lightening up of the subject matter. The ideas are comprehensible, but I do understand other reviewers' comments about the layout and design of these books. It is rather all-over-the-place, with wacky fonts and "fridge magnet" pages (as I understand the Head First series is generally), but the concepts do come across pretty clearly. It's still pretty obvious what the different, wacky fonts are doing to engage the reader, and they do follow a graphic design scheme for the book.

        There are some very heady topics discussed in the book, but the scenarios and various methods of describing the problems and solutions provide an accessible, understandable introduction to OOA&D.

        The examples are all Java-based, but if you program in another language, you should be able to follow along without much difficulty.

        The table of contents could benefit from some better tie-in to the industry-standard terms that are the topics in the chapters/sections (at least add in and bold the terms, such as Delegation, Encapsulation, Polymorphism, etc.). A glossary might be a handy addition, too.

        Generally, I'd say this is a good introduction to Object Orient Analysis and Design, and it is certainly not a reference book.

        (8 of 8 customers found this review helpful)


        OOA&D For Java

        By Steve S.

        from Undisclosed

        Comments about oreilly Head First Object-Oriented Analysis and Design:

        Although I liked this book and learned from it, I feel the title may mislead some potential readers and leave them a bit frustrated. The book is about Object Oriented Design sure enough, but the

        language of choice is Java. Other people not familiar with Java, and expecting a generic treatment of OOP design theory, could be a little


        BUT using one language may also be the strength of this book. Using Java, the authors demonstrate how UML, along with design principles, come together to help you write solid code. More than just reading about theory, the excercises reinforce those principles (Lots and lots of practical exercises as in all Head First books).

        Get this book if you are into Java, and want to learn about OOP design and analysis. If you don't have any exposure to Java, get a copy of Head

        First for Java to get some background prior to attempting this one.

        (8 of 8 customers found this review helpful)


        Great OOP and Design book for beginners

        By Frank Stepanski

        from Undisclosed

        Comments about oreilly Head First Object-Oriented Analysis and Design:

        Object Oriented Programming has been around for years and years in some form or another, but it seems until recently (past 5 years or so) that it really has become a requirement for any type of developer. Whether you a windows or client-server based developer or a client-side scripter (JavaScript) or a web-based developer (JSP, ASP, ASP.NET, etc.). You can't escape not knowing the basics of creating and using objects no matter what technology or computer programming language you use. Knowing how to use and create objects are only the first step in being a successful OOP developer, and this book goes through each step assuming no knowledge whatsoever. And since it's not specific on any programming language or technology anybody can pick up this book and starting using OOP in their specific area.

        The Head First series if you do not know is a unique publishing series in that it makes it fun to learn a new and maybe somewhat confusing topic (like OOP). It takes the material and uses exercises, illustrations, and simple games to help the reader understand the information the author is trying to get across. It is not for everyone, but it's a great way in my opinion to teach the reader the material that helps them from not getting too bored. If you quickly glance at the book and see the many images that do not seem to relate to the material at all you will miss the really great material that is hidden within it. You really need to read the first 10 pages to know if this is the book for you or not. But if you do, then I am really sure you will want to continue to read the rest of the book.

        The topic of OOP and Design Analysis is broken down into 10 easy to follow chapters. The first chapter goes through the basics of what a class is and how and why you would want to create classes and objects in the first place. It also shows code snippets of what classes would look like and the interface it would look like and how it would interact with the rest of your software requirements. A lot of good information is in this chapter to get you started thinking of designing in OOP.

        The next three chapters show lots of examples of how you would get requirements for your applications in trying to divide your applications into small components. It requires a different way of thinking instead of just writing code logic and this chapter helps you re-think things before you start writing any programming logic.

        Chapter 5 part 1 and part 2 takes all those requirements and applies the OOP techniques: encapsulation, abstract classes, polymorphism, and UML design and put it to an example application in showing the reader how all this `theory' can be put into practice. Even though there are so many types of application and functionality that are possible, some basics remain the same for most like displaying and updating data, giving choices to the user, manipulating data, going through conditional statements, etc.

        The next couple chapters discuss the somewhat new topic of Design Patterns. Design Patterns are reusable solutions to common problems. It sounds like it is very simple and it some ways it is but it can get complex very fast. A common design pattern is MVC which is (Model View Controller) used a lot in software engineering. In complex computer applications that present lots of data to the user, one often wishes to separate data (Model) and the user interface (View) concerns, so that changes to the user interface do not impact the data handling, and that the data can be re-organized without changing the user interface. The MVC design pattern solves this problem by decoupling data access and business logic from data presentation and user interaction, by introducing an intermediate component: The Controller. Basically, it takes the 3-tiered model (user layer, business layer, data layer) and provides a easier data flow to help each layer interact with each other. It sounds complicated but the book explains it wonderfully.

        The rest of the book explains how OO is used within the software lifecycle and how it can help speed up each step when done correctly. There are lots of great examples to help the newbie (like me) in understanding some important topics in software development.

        A great book that I highly recommend.

        (4 of 6 customers found this review helpful)


        Another great Head First title

        By Eric

        from Undisclosed

        Comments about oreilly Head First Object-Oriented Analysis and Design:

        First off, I'm already a fan of the Head First series - especially the Head First Design Patterns book. This book follows the same entertaining style and keeps your attention page after page. To me, there are two kinds of Head First books, ones relating to technologies like Java, Servlets & JSPs, EJB, etc and ones that cover a more traditionally academic topics like Design Patterns and this book, OO Analysis and Design. Personally, I like the Head First treatment on the academic topics better than the others. So, if you weren't a fan of Head First Java (for example) you might want to give this book (or the Design Patterns one) a try.

        Specifically for this book - I really liked the chapter layout and the progression as each chapter builds upon the next. The chapters explain the basics of OO principles, ease you into Use Cases and how to write good ones, and continues building upon OO Design principles. When the Head First Design Patterns book came out, we purchased a bunch for the office and held a few "lunch and learn" classes on design patterns for the team at work. I can easily see doing the same thing with this book, as the Head First books make it easy to use as instructional manuals as well.

        If you have found other books (lectures, articles, etc) on OO Analysis and Design a bit intimidating or conceptually difficult to grasp, this is the book for you.

        Displaying reviews 1-9

        Back to top

        Buy 2 Get 1 Free Free Shipping Guarantee
        Buying Options
        Immediate Access - Go Digital what's this?
        Ebook: $50.99
        Formats:  DAISY, ePub, Mobi, PDF
        Print & Ebook: $65.99
        Print: $59.99