Selected Product: | Design patterns : elements of reusable object-oriented software Hardcover Author: Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides Publisher: Addison Wesley Release Date: March 1995 ISBN-10: 0201633612 ISBN-13: 9780201633610 Average Customer Rating: | | |
To use our price comparison to get the cheapest price, please click on the "Find the Cheapest Price" button located above for Design patterns : elements of reusable object-oriented software by Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides (ISBN-10: 0201633612, ISBN-13: 9780201633610). At this time we have not yet written a review for Design patterns : elements of reusable object-oriented software by Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides (ISBN-10: 0201633612, ISBN-13: 9780201633610). Please continue to keep checking back to this page as we are constantly adding reviews. Summaries and Customer Reviews are supplied by Amazon.com Design Patterns is based on the idea that there are only so many design problems in computer programming. This book identifies some common program-design problems--such as adapting the interface of one object to that of another object or notifying an object of a change in another object's state--and explains the best ways (not always the obvious ways) that the authors know to solve them. The idea is that you can use the authors' sophisticated design ideas to solve problems that you often waste time solving over and over again in your own programming. The authors have come up with some ingenious ways to solve some common vexations among object-oriented programmers. Want to build a page-layout program that embeds inline images among characters of various sizes? How about building a program that converts files of one format to another? Chances are, some programmer already has thought of a better solution than you will and the recipes you need are here. Solutions are presented in generalised diagrams of data and logic structures. The idea is that you can take the concepts presented here and adapt them--in whatever language you use--to your individual situation. You may have to read some of the chapters several times before you fully understand them, but when you find a solution in this book, it will make your job easier and your results more elegant. --Jake Bond Plausable | Customer Rating: | I think that a good way to handle this book is to read it from cover to cover, then think about the patterns for a few weeks and then read relevant chapters once again when you are about to implement a given pattern.
Also, one thing to be aware of is that this book has been written before the template era, therefore many implementation examples are outdated and can be replaced with much more elegant template based solutions. For example boost::shared_ptr can be used to safely return a dynamically allocated Iterator object without worrying about memory leaks.
I can't wait to use all this stuff in my next project! | The 5 stars it gets are for historical contribution to the art of software only. Buy a more readable book on the subject! | Customer Rating: | My subject title says it all. These guys are to developers and architects what geeks are to business people. Ever heard business people complain they can't speak tech speak and we'd better shape up and learn the language of business if we want to keep our jobs? Well you'll be complaining about how these guys try to explain their subject to you.
These guys would have been first out the door in your business as they can't explain how to boil and egg without shrouding it in mystery and science. Talk about surrounding yourself in importance then this book is probably aimed at that because the patterns are simple and easy to understand in practice, BUT NOT IF YOU READ THIS BOOK! No doubt if they had written it simply in the first place it would no doubt have not been received in the academic world and would not have its place in history today. As it is, if you want to look important and well clued up then buy this book to show off on your shelves and while your at it put it next to a Charles Petzold book.
These guys get 5 stars for their research and nothing for authorship. If you really want to do your job well, steer clear of this and look elsewhere for real examples of how to make patterns work for you. | The language of software development | Customer Rating: | I've owned this book for a number of years and still refer to it on a regular basis. Although it can be a hard read the value of the content is the common language it has introduced to the industry. The code constructs in the book were not new even when it was written. In order to qualify as a pattern any particular construct has to be proven as a good solution to a recurring problem. What this book did was describe the best and most commonly used patterns and give them names. Those names have become part of the fundamental underpinnings of modern object orientated software development. Every software developer should have this book, even if just to be able to understand what everyone is talking about when they mention adapter, facade, factory, composite, visitor and the rest. | All current comments are valid | Customer Rating: | Because I was advised to read this book and had good comments about it, I was really surprised to see even 1 single negative comment when starting my order process. I therefore started my reading with a sort of bitter feeling i was going to get either bored or over flooded with information.
Anyway, in the end I just want to point that yes it is a must read, but its writing could really be simplified. They also tend to repeat things alot, and suprisingly with the same words in a different order, which makes it very confusing, it's like finally understanding how something works and then looking at it in a mirror... I believe they wrote a very complex algorithm to write more pages ;) | If I could give it 6 stars... | Customer Rating: | For the last 5 years I have been writing C++ code, and discovering coding 'patterns' for myself. Each time, I thought that there must be a book out there which documents these 'patterns', and would save me months of work figuring them out for myself. This is that book, and it does not disappoint.
The 23 patterns are built on a set of core principles. I was aware of these principles before, but seeing their application in pattern after pattern has given me a much better and deeper understanding of how and why to apply these principles in my own code.
I would probably have used some of the patterns, some of the time. But after such a clear and deep explanation of each one, I now see opportunities to use the patterns frequently. And in each case, I realise why my code will be better with them than if I hadn't used them.
Reading this book immediately improved my coding skills by an order of magnitude.
This book belongs on the shelf of every C++ coder, alongside Meyers 'Effective C++' and Beck's 'Extreme Programming Explained'. |
|