Design Patterns Explained: A New Perspective on Object-Oriented Design

Front Cover
Pearson Education, Oct 12, 2004 - Computers - 480 pages
5 Reviews

"One of the great things about the book is the way the authors explain concepts very simply using analogies rather than programming examples–this has been very inspiring for a product I'm working on: an audio-only introduction to OOP and software development."

–Bruce Eckel

"...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."

–James Noble

Leverage the quality and productivity benefits of patterns–without the complexity! Design Patterns Explained, Second Edition is the field's simplest, clearest, most practical introduction to patterns. Using dozens of updated Java examples, it shows programmers and architects exactly how to use patterns to design, develop, and deliver software far more effectively.

You'll start with a complete overview of the fundamental principles of patterns, and the role of object-oriented analysis and design in contemporary software development. Then, using easy-to-understand sample code, Alan Shalloway and James Trott illuminate dozens of today's most useful patterns: their underlying concepts, advantages, tradeoffs, implementation techniques, and pitfalls to avoid. Many patterns are accompanied by UML diagrams.

Building on their best-selling First Edition, Shalloway and Trott have thoroughly updated this book to reflect new software design trends, patterns, and implementation techniques. Reflecting extensive reader feedback, they have deepened and clarified coverage throughout, and reorganized content for even greater ease of understanding. New and revamped coverage in this edition includes

  • Better ways to start "thinking in patterns"
  • How design patterns can facilitate agile development using eXtreme Programming and other methods
  • How to use commonality and variability analysis to design application architectures
  • The key role of testing into a patterns-driven development process
  • How to use factories to instantiate and manage objects more effectively
  • The Object-Pool Pattern–a new pattern not identified by the "Gang of Four"
  • New study/practice questions at the end of every chapter

Gentle yet thorough, this book assumes no patterns experience whatsoever. It's the ideal "first book" on patterns, and a perfect complement to Gamma's classic Design Patterns. If you're a programmer or architect who wants the clearest possible understanding of design patterns–or if you've struggled to make them work for you–read this book.


What people are saying - Write a review

User ratings

5 stars
4 stars
3 stars
2 stars
1 star

Review: Design Patterns Explained: A New Perspective on Object-Oriented Design (Software Patterns Series)

User Review  - Said A - Goodreads

Anyone who wants to write beautiful, manageable and extendible code must read about design patterns. In this book you are also introduced to OOP. So it is a good start point for the OOP+design ... Read full review

Review: Design Patterns Explained: A New Perspective on Object-Oriented Design (Software Patterns Series)

User Review  - Hesham Amin - Goodreads

One of the best books to learn object oriented design. not only design patterns. the way concepts are presented gives the reader the ability to understand the philosophy behind the patterns which ... Read full review


Part IAn Introduction to ObjectOriented Software Development
Chapter 1 The ObjectOriented Paradigm
Chapter 2 The UMLThe Unified Modeling Language
Part IIThe Limitations of Traditional ObjectOriented Design
Chapter 3 A Problem That Cries Out for Flexible Code
Chapter 4 A Standard ObjectOriented Solution
Part III Design Patterns
Chapter 14 The Principles and Strategies of Design Patterns
Chapter 15 Commonality and Variability Analysis
Chapter 16 The Analysis Matrix
Chapter 17 The Decorator Pattern
Part VIOther Values of Patterns
Chapter 18 The Observer Pattern
Chapter 19 The Template Method Pattern
Part VIIFactories

Chapter 5 An Introduction to Design Patterns
Chapter 6 The Facade Pattern
Chapter 7 The Adapter Pattern
Chapter 8 Expanding Our Horizons
Chapter 9 The Strategy Pattern
Chapter 10 The Bridge Pattern
Chapter 11 The Abstract Factory Pattern
Thinking in Patterns
Chapter 12 How Do Experts Design?
Chapter 13 Solving the CADCAM Problem with Patterns
Part VToward a New Paradigm of Design
Chapter 21 The Singleton Pattern and the DoubleChecked Locking Pattern
Chapter 22 The Object Pool Pattern
Chapter 23 The Factory Method Pattern
Chapter 24 Summary of Factories
Part VIIIEndings and Beginnings
A Summation and a Beginning
Chapter 26 Bibliography

Common terms and phrases

About the author (2004)

Alan Shalloway is founder, CEO, and principal consultant of Net Objectives, an object-oriented consulting and training organization. An object-oriented consultant and software developer for over 20 years, he is a frequent speaker at leading development conferences, including SD Expo, Java One, OOP, and OOPSLA. He is a certified Scrum master. He is co-author of An Introduction to XML and its Family of Technologies. Shalloway holds a master's degree in computer science from MIT.

James R. Trott currently works as a senior consultant for a large financial institution in the Pacific Northwest. He has used object-oriented and pattern-based analysis techniques throughout his 20-year career in knowledge management and knowledge engineering. He holds a master of science in applied mathematics, an MBA, and a master of arts in intercultural studies.

Bibliographic information