Rating:  Summary: Useful, but a bit overrated. Review: Experienced software engineers / architects will get very little out of this book regarding programming techniques. There is nothing new here. You will go through the entire volume saying to yourself, "I've been doing that for years, now someone comes along, slaps a label on it and sells a book." However, it will at least serve to update you on the latest academic buzzwords.For inexperienced developers this book will build your repertoire of tools for solving many architectural problems. However, do not deceive yourself into believing that the application of "design patterns" to a project automatically produces a good design. I have encountered far too many newbies (those fresh out of college) who attempt to cram as many design patterns as possible into their code. The result of which can be a needlessly complicated mess that is both inefficient and difficult to maintain. The "Design Patterns" book helps the software engineering community by standardizing terminology and cataloging practices of the craft, but I view it as being a bit overrated.
Rating:  Summary: RE: landonmkelsey comments Review: Mr.Landonmkelsey, Have you ever heard about software design before? From all your comments I can learn that you have not done any design or analysis before coding (look at the review for c# book just right into the code). UML and Design patterns is for software architects. When you build your house do you just jump and start building. You need to analyze, design, plan and use existing patterns before building. It is amazing that they are able to bring patterns for software. Learn it now are you will be lost.
Rating:  Summary: Good for the novice too Review: At first, I thought of this book as a little over my head since I haven't really programmed in a true object-oriented language like Java. (Creating custom objects in JavaScript is a good introduction, but concepts like subclassing, polymorphism and strong data typing can't be practiced.) However, I now find as I prepare to use Java for the first time that the design patterns presented here are fairly easy to understand, and to imagine real-world applications for the examples certainly help a lot). Instead of a book to read to improve your OO skills, I'd recommend this as a *prerequisite* to OOA/OOD/OOP, something to get the cerative juices flowing about how to decompose a system into objects in a truly extensible way. Of course, the best introduction to OO concepts still has to be "Object-Oriented Analysis and Design" by Grady Booch.
Rating:  Summary: add on to my previous review Review: advice if you must read this book start on page 81 When I was in Junior High, there was a teacher whose punishment for chewing gum was to write a 10 page essay on the benefits of chewing gum. I'll tell you I never chewed gum. Can you imagine how much you have to pad the writing to get 10 pages.
Rating:  Summary: never a surprise to me Review: It is too bad other experienced authors like Stephen Prata, Stephen Kochan or Ivor Horton didn't write this book. These authors write books that can be easily assimilated. The book covers a worthy subject and has received aclaim because: there is honor amongst thieves and elistists and their groupies people travel in cadres Booch, Fowler and Larman write horribly and people froth at the mouth. A professor once said he read Booch's 1992 book 3 times and asked himself what he learned and he decided->nothing! My thoughts exactly! Before I read the book, I heard that it uses words/concepts before properly defining them. This is true. The book should be rewritten and the authors horsewhipped. The authors discuss examples they obviously are very familiar with. I spend most of my time rewriting the book on the fly. Books are written to save time and this book doesn't. Much of the dialog is padded with useless run-on statements. Good grief, somebody write a book about operating a toilet or preparing breakfast cereal. If you like this book, you are unable to think for yourself. Another review suggested that the authors didn't know what they were talking about. Hard to say...some people should not write books. I remember once writing several pages and looking back realized, nobody will know what in the bell I am talking about. Maybe I didn't! In Booch's more recent book, he uses the black diamond. I emailed Booch and asked where he defines the black diamond. A month later back comes an email "chapter 16" Booch and Larman are experts at padding. I read 50 pages of the Larman UML book and asked myself what I learned...NOTHING! Another horribly useless book some people actually liked was a book on OO Multithreading by Hughes and Hughes. What a lie! Wake up people and learn to think for your selves rather than following some famous person.
Rating:  Summary: The book for Object Oriented Programming Review: I came across this classic pretty innocuously. Some colleagues suggested a design patterns study group and from that day I was hooked. This book teaches you more about Object Oriented programming than all the other OO books combined. Each pattern opens up another facet of Object Oriented programming. Once you are done with all the patterns, and then, done with them again, and then, done with them again you feel the euphoria of having understood something so abstract, but at the same time so tangible and visible around us. Be it Java, C++ or any other OO language, your design ideas and orgranizations become incredibly elegant and simple. This, is something you learn and appreciate only if you have gone through this book. And, here, by "done with them", I mean a thorough study, sample implementations, production implementations and the ability to recognize that pattern with its subtle variations. The GoF book ( Gang of Four ) is structured as a manual of sorts, and it requires some orderly study. Look up Design Patterns Study Group on Google. The study orders suggested there are worth mulling over. The simple patterns are easy enough to understand ( Factory method and the like ) and the complex ones ( Visitor ) can be digested with the understanding of the basic patterns. Again, at the end of the book, ( there is so end to this book, though ) you might actually end up mastering OO coding. Couple of possible criticisms on this book is that you begin to think in patterns for every problem. Which might not be entirely good, and this book doesnt encompass the full world of pure OO patterns ( collecting parameter, for example ). But its still THE book to start with. It also helps that this book has become a standard of sorts and the terms and jargon presented in this book are highly visible in the OO design and programming world. Worth a Buy, Worth a dozen reads.
Rating:  Summary: Surprised that some people rated this book poorly Review: I don't think a book of this high quality, and as widely recognized needs a few more words of praise from me. I was simply surprised with some people rating it poorly. This is one of those rare books that you cannot find fault with. I've read each one of those patterns, and while there have a few points on which I could have argued with the authors, it has stood the test of time and changing technology. That in itself is proof enough that these are truly patterns, language and technology and platform independent. These patterns are valid in any object-oriented environment. Some patterns may benefit from some language features, and that has be accurately described in the book.
Rating:  Summary: hope to know about design patterns Review: This book isn't for the weak minded. It's not an introductory book on the subject of design patterns, but it is the best design patterns reference available. The book is technical and complex, but if you want to know anything and everything about patterns, here you are.
Rating:  Summary: Excellent Reference Review: 'Design Patterns' is so influential that its authours have become known as the "Gang of Four". Look up "GoF" on Google and see how many hits are retuned! This book deserves its reputation. It has a prominent place on my shelf, where I can reach it easily. That's because I use it a lot. A note of caution: This book is definitely not a tutorial! I first tried using the book to learn patterns, and got nowhere. If you want to learn design patterns, I'd suggest Martin, "Agile Software Development". It covers several key patterns and the principles that govern their use. Another great book on the subject is Fowler, "Refactoring". This book shows how to first write code that works, then massage the working code into design patterns to increase its flexibility.
Rating:  Summary: Great even for java developers Review: As a java developer, I was reluctant to buy this book because I thought I wouldn't understand the sample code. So after trying out some patterns books written for java developers, I finally broke down and bought this one. I'm glad I did. This book is far more understandable and readable than the java patterns books. I finally feel I have an understanding of the patterns, the problems they address, and the considerations for using them. My recommendation is that if you are an experienced java developer, don't waste time on the java patterns books - buy this one and read it.
|