Design Patterns: Elements of Reusable Object-Oriented Software
Erich Gamma, Richard Helm, Ralph Johnson, and John Vlissides
These four top-notch authors show how object-oriented systems exhibit recurring patterns and structures of objects that solve particular design problems, allowing designers to reuse successful designs and architectures without having to rediscover the design solutions. Central to this book is a catalog of 23 design patterns that have seen successful practical application and are representative of good object-oriented design. Each pattern describes the circumstances in which it is applicable, when it can be applied in view of other design constraints, and the consequences and trade-offs of using the pattern in a larger design.
ISBN 0-201-63442-2 Hardback 416 pages ©1995
Pattern Hatching: Design Patterns Applied
John Vlissides
Design Patterns co-author John Vlissides offers a hands-on, example-driven approach to understanding, applying, and writing your own design patterns. He also presents two new patterns along with new insights on familiar ones, making this an indispensable supplement to the seminal work in the field. The book dispels many of the misconceptions about patterns that have spread in the software development communityclearly articulating what patterns are and how they ease the development process.
ISBN 0-201-43293-5 Paperback 192 Pages ©1998
The Design Patterns Smalltalk Companion
Sherman Alpert, Kyle Brown, and Bobby Woolf
In this book, intended as a language companion to Design Patterns, noted Smalltalk and design patterns experts implement the 23 design patterns using Smalltalk code. Using the same successful format as Design Patterns, this book tailors the topic of design patterns to the Smalltalk programmerno other book offers this. The authors have worked closely with the Design Patterns authors to ensure that this companion volume is held to the same high quality standards that made the original a bestseller. The full source code is available on Addison-Wesley's web site.
ISBN 0-201-18462-1 Hardback 448 pages ©1998
Analysis Patterns: Reusable Object Models
Martin Fowler
Analysis Patterns is an important contribution to the growing patterns literature. It captures profound object modeling expertise from different domains as a catalog of patterns. These domain patterns will help you solve challenging modeling problems across different domains.Erich Gamma, Technical Director, Object Technology International.
Martin Fowler shares with you his wealth of object modeling experience and his keen eye for solving repeating problems and transforming the solutions into reusable models. Analysis Patterns provides a catalog of patterns that have emerged in a wide range of domains, including trading, measurement, accounting, and organizational relationships.
ISBN 0-201-89542-0 Hardback 672 pages ©1997
Concurrent Programming in Java: Design Principles and Patterns
Doug Lea
Serious Java programmers interested in using this rich language
to the fullest need to master thread programming to significantly
enhance their ability to create high-performance Java applications.
Taking a design pattern approach, this book offers numerous standard
design techniques for creating and implementing Java structures
that solve common concurrent programming challenges. You will learn
how to initiate, control, and coordinate concurrent activities
using the Java constructs java.lang.Thread
, the keywords
synchronized and volatile, and the methods wait, notify, and
notifyAll. In addition, you will find detailed coverage of all
aspects of thread programming, including such topics as containment
and synchronization, deadlocks and conflicts, state-dependent
action, control, handling user services, flow, and coordinated
interaction. Code examples throughout help clarify the subtleties
of the concurrent programming concepts discussed.
ISBN 0-201-69581-2 Paperback 352 pages ©1997
Pattern Languages of Program Design
Edited by James O. Coplien and Douglas C. Schmidt
This book brings you the expertise and creativity of leaders in the design patterns field, including James Coplien, Douglas Schmidt, and Ward Cunningham. It explores many facets of design patterns and reveals how useful this technique can be in a wide range of fields and industriesclient/server programming, software design, distributed and parallel processing, financial services, software reuse, and interface design.
ISBN 0-201-60734-4 Paperback 576 pages ©1995
Pattern Languages of Program Design 2
John M. Vlissides, James O. Coplien, and Norman L. Kerth
This volume, with contributions from the biggest names in the patterns community, is the second in a series documenting patterns for professional software developers. This new collection not only reveals the secrets of great software professionals, but also makes those secrets easy to apply.
ISBN 0-201-89527-7 Paperback 624 pages ©1996
Pattern Languages of Program Design 3
Robert Martin, Dirk Riehle, and Frank Buschmann
This third volume is the first to include international submissions, giving the editors even more high-quality essays from which to choose. This new collection builds upon the popular appeal of the first two volumes, keeping developers up-to-date on the latest uses and implementations of patterns.
ISBN 0-201-31011-2 Paperback 688 pages ©1998
Pattern Languages of Program Design 4Neil Harrison, Brian Foote, Hans Rohnert
The fourth volume in a series of books documenting patterns for professional software developers, Pattern Languages of Program Design 4 captures the state-of-the-art and current best practices in the software development community. The 29 patterns in this book represent the cream of the Pattern Languages of Programs conferences since 1997. These patterns provide effective, tested, and versatile software design solutions for solving real-world development challenges in a variety of domains, technologies, and organizations.
ISBN 0-201-43304-4 Paperback 640 Pages ©2000