- Series: Software Patterns Series
- Paperback: 368 pages
- Publisher: Addison-Wesley Professional; 1st edition (July 9, 2001)
- Language: English
- ISBN-10: 0201715945
- ISBN-13: 978-0201715941
- Product Dimensions: 7.4 x 0.7 x 9.2 inches
- Shipping Weight: 13.6 ounces (View shipping rates and policies)
- Average Customer Review: 129 customer reviews
- Amazon Best Sellers Rank: #1,956,331 in Books (See Top 100 in Books)
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 Explained: A New Perspective on Object-Oriented Design 1st Edition
Use the Amazon App to scan ISBNs and compare prices.
There is a newer edition of this item:
The Amazon Book Review
Author interviews, book reviews, editors picks, and more. Read it now
Customers who viewed this item also viewed
What other items do customers buy after viewing this item?
From the Back Cover
"...I would expect that readers with a basic understanding of object-oriented programming and design would find this book useful, before approaching design patterns completely. Design Patterns Explained complements the existing design patterns texts and may perform a very useful role, fitting between introductory texts such as UML Distilled and the more advanced patterns books."
Design Patterns Explained: A New Perspective on Object-Oriented Design draws together the principles of object-oriented programming with the power of design patterns to create an environment for robust and reliable software development. Packed with practical and applicable examples, this book teaches you to solve common programming problems with patterns--and explains the advantages of patterns for modern software design.
Beginning with a complete overview of the fundamentals of patterns, Design Patterns Explained stresses the importance of analysis and design. The authors clearly demonstrate how patterns can facilitate the overall development process. Throughout the book, key object-oriented design principles are explained, along with the concepts and benefits behind specific patterns. With illustrative examples in C++ and Java, the book demystifies the "whys," "why nots," and "hows" of patterns and explains pattern implementation.
Key topics covered include:
- New perspectives on objects, encapsulation, and inheritance
- The idea of design patterns, their origins, and how they apply in the discipline of software design
- Pattern-based, object-oriented software development using the Unified Modeling Language (UML)
- How to implement critical patterns--Strategy, Observer, Bridge, Decorator, and many more
- Commonality/Variability Analysis and design patterns, and how they aid in understanding abstract classes
From analysis to implementation, Design Patterns Explained allows you to unleash the true potential of patterns and paves the path for improving your overall designs. This book provides newcomers with a genuinely accurate and helpful introduction to object-oriented design patterns.
About the Author
Alan Shalloway is the founder, CEO, and principal consultant of Net Objectives, an object-oriented consulting/training organization. He has a master's degree in computer science from MIT, over thirty years of experience in software development, and several years of experience in mentoring and training. He spends much of his time offering courses in design patterns, OOA, OOD, and lightweight methodologies, and building advanced software for both his own company and his clients.
James R. Trott is a senior consultant for a large software company in the Pacific Northwest and formerly was a senior engineer for a large aerospace company. He holds a master of science in applied mathematics, an MBA, and a master of arts in intercultural studies. He has spent seventeen years in the field of artificial intelligence, knowledge modeling, and knowledge management and is an expert in using cognitive design patterns and the KADS methodology.
Browse award-winning titles. See more
Top customer reviews
There was a problem filtering reviews right now. Please try again later.
First, the benefits. Lots of beginners like the informal and case-oriented approach the authors take. This reads a lot less like someone's PhD dissertation, and shows Java and C++ samples to explain many patterns and concepts. (For some, translating a Smalltalk or even C++ example into Java is difficult enough for the real topic of discussion to get lost.)
It also uses the sustained example of a CAD/CAM system to show specific, concrete cases where a pattern might apply. This prolonged example means the reader doesn't have to switch gears to a new application context every time a pattern is put to work, and gives a chance for interactions between multiple patterns to emerge.
As near as I can tell, this book came from the class notes of a course taught by one of the authors. That explains the many additional hints about good programming and tips on OO style. It also explains the idiosyncratic order in which topics appear - although it stays close to the content of Gamma et al., it certainly does not stay close to that book's organization.
That's where I think Shalloway and Trott start to falter. The organization of this book seems to be built around the CAD/CAM example, not around any inherent properties of the patterns or logical connection to OO topics. That's fine, until you go to an application different from theirs. The focus on specific examples is also a weakness. Design Patterns are too broad to be defined by any one implementation. That means that any example, while it represents one way to apply a pattern, fails to represent a half-dozen others. The literal-minded student comes away with much too narrow an idea of how the pattern can be applied. I'm not sure that replacing the generality of Gamma et al. with exact point solutions is an improvement.
Still, enough students tell me this book helps that I believe them. There's a large body of DP literature out there, and some is pretty awful. I find this book undistinguished, but it's on my list of references for beginners who struggle with DP concepts. This may help clarify Gamma et al., but doesn't replace it.
-less dense than GoF
-in-depth real-world case studies showing how patterns provided solutions
-writing style is in the vein of "inspirational" or "self-help" books - to me it's unsuitable for a technical subject (author talks about how patterns have "changed his life", like a religion or something).
-the author comes across as an evangelist, treating the GoF text as dogma. Patterns, like any other technique, are not magic and have their own set of pros/cons; the author presents them as the be-all end-all solution for all software engineering problems.
-There is a *lot* of superfluous space in this book - huge margins, big font, before-and-after chapter summaries ("here's a two-page list of what I'm going to tell you", followed by the chapter contents, followed by "here's a two-page list of what I just told you.")
The pros outweigh the nitpicks listed above, but I highly suggest following this up with the original GoF text - you may find it more digestible after this appetizer.
Most recent customer reviews
I just wanted to say thank you for writing such a great book. I had been advised to read your book before picking up the Gang of Four's Design Patterns, and I...Read more