Design Patterns Explained, Second Edition

Leverage the quality and productivity benefits of patterns
- without the complexity. This book 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 & design in contemporary software
development. Then, using easy-to-understand sample code, the authors
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.
Shalloway and Trott have thoroughly updated this book
to reflect new software design trends, patterns, and
implementation techniques.
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.