Head First Object-Oriented Analysis and Design and over one million other books are available for Amazon Kindle. Learn more



or
Sign in to turn on 1-Click ordering
Sell Us Your Item
For a $7.50 Gift Card
Trade in
More Buying Choices
Have one to sell? Sell yours here
Start reading Head First Object-Oriented Analysis and Design on your Kindle in under a minute.

Don't have a Kindle? Get your Kindle here, or download a FREE Kindle Reading App.
Sorry, this item is not available in
Image not available for
Color:
Image not available

To view this video download Flash Player

 

Head First Object-Oriented Analysis and Design [Paperback]

Brett D. McLaughlin , Gary Pollice , Dave West
3.8 out of 5 stars  See all reviews (53 customer reviews)

Buy New
$29.17 & FREE Shipping. Details
Rent
$20.54
In Stock.
Ships from and sold by Amazon.com. Gift-wrap available.
In Stock.
Rented by RentU and Fulfilled by Amazon.
Want it tomorrow, May 22? Choose One-Day Shipping at checkout. Details
Free Two-Day Shipping for College Students with Amazon Student

Sell Back Your Copy for $7.50
No matter where you bought them, get up to 70% back when you sell your books at Amazon.com.
Used Price$11.25
Trade-in Price$7.50
Price after
Trade-in
$3.75

Book Description

December 4, 2006 0596008678 978-0596008673 1
"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 and 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 are communicating 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!


Frequently Bought Together

Head First Object-Oriented Analysis and Design + Head First Design Patterns + Head First Java
Price for all three: $86.02

Buy the selected items together
  • Head First Design Patterns $27.89
  • Head First Java $28.96


Editorial Reviews

About the Author

Brett McLaughlin is a bestselling and award-winning non-fiction author. His books on computer programming, home theater, and analysis and design have sold in excess of 100,000 copies. He has been writing, editing, and producing technical books for nearly a decade, and is as comfortable in front of a word processor as he is behind a guitar, chasing his two sons and his daughter around the house, or laughing at reruns of Arrested Development with his wife.

Brett spends most of his time these days on cognitive theory, codifying and expanding on the learning principles that shaped the Head First series into a bestselling phenomenon. He's curious about how humans best learn, why Star Wars was so formulaic and still so successful, and is adamant that a good video game is the most effective learning paradigm we have.

Gary Pollice is a self-labeled curmudgeon (that's a crusty, ill- tempered, usually old man) who spent over 35 years in industry trying to figure out what he wanted to be when he grew up. Even though he hasn't grown up yet, he did make the move in 2003 to the hallowed halls of academia where he has been corrupting the minds of the next generation of software developers with radical ideas like, "develop software for your customer, learn how to work as part of a team, design and code quality and elegance and correctness counts, and it's okay to be a nerd as long as you are a great one." Gary is also a co-author of Head First Object-Oriented Analysis and Design. Gary is a Professor of Practice (meaning he had a real job before becoming a professor) at Worcester Polytechnic Institute. He went to WPI because he was so impressed with the WPI graduates that he's worked with over the years. He lives in central Massachusetts with his wife, Vikki, and their two dogs, Aloysius and Ignatius. When not working on geeky things he ... well he's always working on geeky things. You can see what he's up to by visiting his WPI home page at http://web.cs.wpi.edu/~gpollice/. Feel free to drop him a note and complain or cheer about the book.

Dave West would like to describe himself as sheik geek. Unfortunately no one else would describe him in that way. They would say he is a professional Englishman who likes to talk about software development best practices with the passion and energy of an evangelical preacher. Recently Dave has moved to Ivar Jacobson Consulting, where he runs the Americas and can combine his desire to talk about software development and spread the word on rugby and football, and argue that cricket is more exciting that baseball. Before running the Americas for Ivar Jacobson Consulting, Dave worked for a number of years at Rational Software (now a part of IBM). Dave held many positions at Rational and then IBM, including Product Manager for RUP where he introduced the idea of process plug-ins and agility to RUP. Dave still laments the days when he use to sit in a cube and write software in the city of London. This is where he believes he cut his teeth writing big insurance systems with nothing but a green screen and a process flow chart.

Dave can be contacted at dwest@ivarjacobson.com, and if he is not with customers or drinking warm beer with his friends in Boston, he will email you back.


Product Details

  • Paperback: 636 pages
  • Publisher: O'Reilly Media; 1 edition (December 4, 2006)
  • Language: English
  • ISBN-10: 0596008678
  • ISBN-13: 978-0596008673
  • Product Dimensions: 8.1 x 1.4 x 9.3 inches
  • Shipping Weight: 2.6 pounds (View shipping rates and policies)
  • Average Customer Review: 3.8 out of 5 stars  See all reviews (53 customer reviews)
  • Amazon Best Sellers Rank: #31,987 in Books (See Top 100 in Books)

More About the Authors

Discover books, learn about writers, read author blogs, and more.

Customer Reviews

Most Helpful Customer Reviews
115 of 119 people found the following review helpful
3.0 out of 5 stars Decent Introduction to OOA&D March 6, 2007
Format:Paperback|Amazon Verified Purchase
I like the Head First series, and even Head Rush, for its innovative and fun approach for introductory software topics. I've had small concerns on all of them but I have never been as ambivalent as I have for this book. I know a big part of this problem was that it was rewritten expeditious (I am still not sure of the reason why) and it shows throughout the book with spelling, logic and code errors.

You can tell that the first chapter was rushed. There are several spelling and programming mistakes. The most egregious is where they ask you to look through some code to find what "FIRST" you change and then they answer that question with a much smaller problem (the main problem was they forgot to add a return statement (pg.5) and they write about the inconsistency of using String based searching). It has also been mentioned by several reviewers of the use of the method name "matches" which only makes sense for regex not for an equals operation. I also did not like the search example (how can you not think of price in a search?). The best part of this chapter is the mantra that should be practiced by many engineers: "Make sure your software does what the customer wants it to do."

The next few chapters are definitely better (though still some spelling mistakes). They are a good read for beginners and intermediate programmers on gathering requirements, change of these requirements and analysis. The ideas are a bit simplistic though it is good to get many programmers used to the idea of UML and use cases and using them to drive requirement gathering and textual analysis. Intermediate and advanced readers familiar with use cases will gain more from reading Alistair Cockburn's "Writing Effective Use Cases" (or will already have read it) and for further UML reading should go with "UML Distilled" by Martin Fowler.

When the book gets back to design I see some problems with the coding. The designer has this bizarre idea of abstracting all properties (under the guise of "encapsulate what varies") into a Map attribute to lessen the amount of subclasses for instruments. While initially this may seem a good idea it gets rid of all type-safe coding (you can now safely assign an instrument type to a backwood for the instrument), you cannot have behavior from the instruments (this is mentioned in the book) and if you put a property with one letter misspelled or capitalized out-of-place you now have a bug, one that you might have trouble finding thereby increasing maintenance costs. Too much flexibility makes the code ambiguous.

After design, the studies get to solving really big problems, architecture, design principles, and iterating and testing. These chapters I enjoyed much more especially the chapter on design principles with the beginning mantra that "Originality is Overrated." This chapter goes over basic principles such as OCP (open-closed principle), DRY (don't repeat yourself), SRP (single responsibility principle) and LSP (Liskov Substitution Principle).

Then the book last chapter (the ooa&d lifecycle) sums the lessons in the book in one large (somewhat contrived but these type of examples always are) program for the Objectville Subway. Then two terse appendixes dealing with ten additional OOA&D topics and OO concepts should make the reader realize that this book is just an introductory sliver of what needs to be learned for a sagacious software acumen.

This book is useful for programmers with a bit of Java (or C#) knowledge who want to get a good overview of OOA&D. This book is useful because it teaches important OO vernacular and a simple holistic approach to iterative development. If the book did not have a "quickly done" feeling, better design and fewer mistakes I would have liked this book more. This book is a good candidate for a second edition. If you want a more thorough explanation of these topics I recommend "The Object Primer" by Scott Ambler as one of my favorite books for a good introduction to OOA&D.
Was this review helpful to you?
53 of 58 people found the following review helpful
By JANMC
Format:Paperback
Am I really the first to write a review on this new installment? Well, let me start with a huge five stars for this new addition to the Head First series!

I had been waiting for this book to hit the shelves a while, since I absolutely loved the innovative approach of the Head First Design patterns book. This one was no different in the way it clearly and creatively presented key principles to good object-oriented design and educated the reader on how to approach designing software for the real world from requirements gathering all the way to anticipating and designing for change.

A few things about this book - in my opinion, there is probably no better way to present the world of software design to a beginner. Instead of talking about abstract concepts, the writers present the material using concrete scenarios, and through-out the book, the reader is encouraged heavily to think through the pitfalls and problems and come up with solutions - there is no better way to learn. There are lots of exercises and even specific places to write ones ideas down.

Some topics covered are of course good object oriented principles like encapsulation and delegation, requirements gathering, use cases, anticipating changes, class diagrams, UML and more. The book only briefly touches (but does not go into too much detail) on state diagrams, sequence diagrams, unit testing and other concepts which are a huge part of software design, in the last chapter. While it does not go into these subjects deeply, it does not leave the reader completely without any knowledge on these topics either.

It does cover more than enough to enable a reader to become very well versed in architectural principles. Best of all, the information is presented in a way where it will stick forever. The whole point is not to cover everything there is to know, but for you to really GET IT, on what is truly crucial to know.

This book is not for seasoned architects or for those who do not appreciate comical diagrams and pictures on every page (Even though, anyone with a sense of humor would appreciate the fun way the information was presented). If however, someone is confused about object oriented design and has only heard the buzz worlds but doesn't know how it all comes together - this book will ensure that they are never confused again. Not only that, but after reading this book, they will be armed with tried and tested principles of experience of what kind of design works for long term solutions vs what is a nightmare.

Another thing to mention is that all the code examples in this book are in Java (as all Head First books are). This is certainly not a problem, even if you do not code in Java, because the principles are the same no matter the language, and C# .NET users in particular will not have any problems following the code examples.

The book does assume prior programming knowledge of an object oriented language in order to follow the code. This is not a book to learn how to write code in a programming language. It teaches how to design and architect your project, with the whole software life-cycle in mind.

There are a few useful appendixes in the back to quickly define and explain the basics of software design elements used in the book (like UML for instance).

Overall, it is a great book for anyone interested in software design principles! Best of all, you will get through this book QUICKLY, because with the creative and fun way that you will be learning, it will be hard to put down.
Comment | 
Was this review helpful to you?
21 of 22 people found the following review helpful
5.0 out of 5 stars Another great Head First title December 12, 2006
Format:Paperback
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.
Comment | 
Was this review helpful to you?
Most Recent Customer Reviews
1.0 out of 5 stars Worst book on object oriented methodology
I m done with head first series....complete crap with useless and obscure details without introducing the basic concepts and fundamentals.
Published 1 month ago by Mr. I. Bhattacharjee
5.0 out of 5 stars Great Book!
I love the teaching style in this series. The beginning goes into more general project design that I really wanted, but overall the book is still great!
Published 2 months ago by D. Collier
5.0 out of 5 stars Awesome book
If you want to learn how to analyse and design your programs this book is a must have.
It deals with every step of the process, such as listing requirements, writing use... Read more
Published 4 months ago by Wolfgang marcos
2.0 out of 5 stars Poorly written
I bought this book upon recommendation from a friend. They said it wouldn't be dry and is a easy read. While it isn't dry... it's very corky, and difficult to read. Read more
Published 5 months ago by J. Renton
5.0 out of 5 stars Its funny
I never expected a technical book to be so funny.
What I like the most about this book is their presentation style. Read more
Published 6 months ago by Jithin John
1.0 out of 5 stars Kindle Version Defective, DO NOT BUY
I bought the Kindle version of this book to brush up on some OOA&D for a project I just started.

A good portion of the illustrations have inverted levels (white is black... Read more
Published 15 months ago by Erik Bolton
5.0 out of 5 stars An excellent book on a slighted subject
I do LabVIEW programming and trying to find a good reference on this subject has been a struggle. This book, although written for JAVA programmers, contains the information on how... Read more
Published 16 months ago by T. Hageman
4.0 out of 5 stars Great book
As with most Head-First books it allows you for a fun, yet comprehensive learning of the subject. Also great if you want to refresh your knowledge of some things you haven't worked... Read more
Published 17 months ago by YorshCS
5.0 out of 5 stars excellent
I felt like I am studying at elementary school . The book is amazing especially dumb questions every beginner programmer should read it first :)
Published 18 months ago by Beginner
4.0 out of 5 stars Good Introduction to OO land
This is one of the texts we used in an introductory course on OOA & D. As with other Head First books, I found this book to be an easy to read and I liked the humor too. Read more
Published on December 31, 2010 by Siddhardha
Search Customer Reviews
Only search this product's reviews

What Other Items Do Customers Buy After Viewing This Item?


Forums

Search Customer Discussions
Search all Amazon discussions

Topic From this Discussion
Is this any different then Head First Design Patterns?
Hi - This is David West one of the authors of HFOOAD. Both books compliment each other. Head First Design Patterns takes the ideas behind many great design patterns and presents them in a easy to use and easy to learn manner. HFOOAD focuses instead on the process of building great software. ... Read more
Dec 11, 2006 by David West |  See all 2 posts
Why is this book Late??
Although it says that this book should be released nov 1 2006, oreilly usually releases a month's book at the end of the month not the begining. Not sure why amazon say's nov 1, but it will probably come at the end of the month. Same thing happened with head rush ajax. (which was a great book... Read more
Nov 13, 2006 by Glenn J. Timchishen |  See all 4 posts
Start a new discussion
Topic:
First post:
Prompts for sign-in
 




So You'd Like to...


Create a guide


Look for Similar Items by Category