- CD-ROM: 2 pages
- Publisher: Addison-Wesley Professional; 1 edition (May 31, 1998)
- Language: English
- ISBN-10: 0201634988
- ISBN-13: 978-0201634983
- Product Dimensions: 7.6 x 0.8 x 9.3 inches
- Shipping Weight: 2.4 ounces
- Average Customer Review: 493 customer reviews
Amazon Best Sellers Rank:
#1,933,096 in Books (See Top 100 in Books)
- #23 in Books > Computers & Technology > Programming > Software Design, Testing & Engineering > Software Reuse
- #577 in Books > Textbooks > Computer Science > Object-Oriented Software Design
- #1965 in Books > Computers & Technology > Programming > Software Design, Testing & Engineering > Object-Oriented Design
Enter your mobile number or email address below and we'll send you a link to download the free Kindle App. Then you can start reading Kindle books on your smartphone, tablet, or computer - no Kindle device required.
To get the free app, enter your mobile phone number.
Design Patterns CD: Elements of Reusable Object-Oriented Software (Professional Computing) 1st Edition
Use the Amazon App to scan ISBNs and compare prices.
Customers who viewed this item also viewed
Customers who bought this item also bought
What other items do customers buy after viewing this item?
With the profusion of technologies, it's rare to say that a particular book is required reading for developers. Design Patterns: Elements of Reusable Object Oriented Software is one of those indispensable texts for anyone who develops software using objects. This CD-ROM edition contains a hypertext version of the book, along with additional features that make it easy to use patterns in your own programs.
The CD-ROM works with any Java-enabled browser (Internet Explorer 4.0 and Netscape Communicator 4.0.) It includes the full text of the printed book along with the richness of hypertext links to get the most out of patterns quickly. (Two versions of the text, one for 640 x 480 resolution and one for higher resolutions, are provided.)
Patterns are higher-order designs, which occur repeatedly in object-oriented design. The heart of this title is the "pattern catalog" of 23 basic patterns, ranging from creational patterns, such as Factory and Builder, and structural patterns, such as Facade and Flyweight, to behavioral patterns, such as Command and Mediator. The CD-ROM details each design element along with reasons to use it and sample code in Smalltalk and C++. (With the online version, you can even cut and paste sample code into your programs.) You can use the Java search engine to search the CD-ROM for keywords, and the online version lets you cross-reference patterns easily. All in all, the Design Patterns CD is an appealing new version of one of the most essential texts for object-oriented developers.
From the Back Cover
Now on CD, this internationally acclaimed bestseller is more valuable than ever! Use the contents of the CD to create your own design documents and reusable components. The CD contains:
- 23 patterns you can cut and paste into your own design documents
- Sample code demonstrating pattern implementation
- Complete Design Patterns content in standard HTML format, with numerous hyper-linked cross-references
- Access through a standard web browser
- Java-based dynamic search mechanism, enhancing online search capabilities
- Graphical user environment, allowing ease of navigation
First published in 1995, this landmark work on object-oriented software design presents a catalog of simple and succinct solutions to common design problems. Created by four experienced designers, the 23 patterns contained herein have become an essential resource for anyone developing reusable object-oriented software. In response to reader demand, the complete text and pattern catalog are now available on CD-ROM.
The authors first describe what patterns are and how they help you in the design process. They then systematically name, explain, evaluate, and catalog recurring designs in object-oriented systems. All patterns are compiled from real-world examples and include code that demonstrates how they may be implemented in object-oriented programming languages such as C++ and Smalltalk. Readers who already own the book will want the CD to take advantage of its dynamic search mechanism and ready-to-install patterns.
The authors are internationally recognized experts in the object-oriented software field.
Top customer reviews
There was a problem filtering reviews right now. Please try again later.
What it seems patterns are actually good for is giving common names to popular solutions to problems, to make them easier to call to mind, and easier to discuss with others. Even this much is overrated. Before the advent of patterns, you could have said "callbacks" and people would have understood. Now you say "the Observer pattern".
_Design Patterns_ is none the less valuable, because it is one of those few books that EVERYONE is expected to have read. This is helpful in practice, as you can expect everyone to be familiar with its vocabulary. Few books truly fall into this "required reading" category. The only other that comes to mind is the MIT algorithms text. Many tech pundits claim that every next book is "required reading", and the claim becomes tiring after a while, but this is one of the few that really is.
I would not necessarily purchase it, though. The "pattern" schematic is verbose, and requires pages upon pages to describe something that, once you have seen it in practice once or twice, you will recognize immediately. Omitting the appendixes, the book is barely 350 pages, and presents only 23 patterns. Only a handful of the patterns are truly famous: Singleton, Observer, Template Method ... perhaps a few more. A number of them are poorly presented. Chain of Responsibility, for instance, is just one of many ways to define an event framework and does not belong in a book that doesn't present the alternatives. Mediator is another; there must be dozens of ways to create a Mediator, which most people would call an "event registry" or something else, rather than a Mediator. "Mediator" itself is little more than a name, and won't help you in design.
Some patterns are boring, since modern languages tend to provide them, and we've heard about them many times already: Iterator, Proxy, Memento (serialization). Others, like Command, are geared towards GUIs, and provide little value to other types of applications. Then there are the State and Strategy patterns, which are two sides of the same coin, and needn't be given two different names.
And so on. Definitely do not "study" this book if it seems you "just don't get it". Chances are the book is wrong. It is worth a read through, and a second read through if the terminology doesn't stick the first time, but stop at that. My gut feeling is that this book is most appropriate for someone working on his or her first large project. After that, once the terminology sinks in, the book has little else to offer. And if taken dogmatically, or considered "inspired" or infallible, the book is a hindrance. Finally, overuse of patterns can result in a "kitchen sink" design, instead of a simple one that takes a few patterns, that may or may not be ones from this book, and implements them cleanly. Take the book for what it's worth, but remain skeptical.
Why do I say obvious? Because any programmer worth their salt will over time develop their own home-grown library of patterns and exemplars to reuse. This book merely calls attention to this habit.
Also, as other reviewers have pointed out, the text is too generic and abstract, unless you're into that. Donald Knuth anybody?
Plus the book is too expensive--if you must, buy it used like I plan to. That's right, I haven't read it yet. But I know enough just reading these reviews; sometimes you CAN judge a book by the cover. I am over the age of 13, yes.
(D.E.Knuth: Structured Programming with go to Statements).
Donald Knuth named his fundamental work "The Art of Computer Programming". There are also in art some fundamental techniques. But the Gang of Four reduces art to a collection of Lego-bricks. As already noted by other reviewers there are only isolated and trivial examples in this book. This is no accident or omission. One can't build a nice coherent building with these Lego-bricks.
I have seen on numerous occasion code where I have asked myself: Oh my god, why is this stuff so unbelievable complicated. If one looks closer one notices the Lego-brick notation. The programmer has followed the Gang of Four without much thought. It looks like a Matryoshka with one Facede on another. At they end there is a tiny and trivial routine which does real work.
Wirth's law: "software is getting slower more rapidly than hardware becomes faster" depends to a great deal on these pattern-fetishm. The Java-EE monster is a classical example of Patterns in Action.
The book founded a whole pattern industry. Stranded programmers make their living from giving useless general advice instead of inventing concrete and ingenious solutions.
But there are also advantages: If one sees the pattern-buzzwords one knows the mindset of the programmer. One knows also without detailed investigation that one has to rewrite the blunted code. If one sees on a book cover the word "Pattern" one can savely save the money. This is the dialectic of the pattern-enlightment. If forms an antipattern which should be avoided.
I don't argue for "anything goes". But God has given humans the brain to think themselves. There are no easy and clear-cut solutions for intrigate problems.
If one wants to study fundamental programming techniques one should read:
Douglas Comer: Operating System Design, The Xinu Approach.
Comer demonstrates on a complex problem how software should be structured and coded. I have not noticed the term "pattern" in this book.
But the Pattern-Believer expects simple answers and solutions for complex problems. The Comer book is not suited for such a mindset.
P.S.: The Knuth quote does not relate to the Gang of Four. But it fits to all attempts to put programming a Procrustes bed.
Most recent customer reviews
However, what you don't notice is that the red triangle in the upper left corner indicates that this is a book meant to be...Read more