Books about Patterns


Books about patterns and related topics.
Data Model Patterns: Conventions of Thought. David C. Hay.
Design Patterns: Elements of Reusable Object-Oriented Software. Gamma et. al.
Design Patterns for Object-Oriented Software Development. W. Pree.
Object Models: Strategies, Patterns, & Applications. Coad, North & Mayfield.
Pattern Languages of Program Design. Coplien & Schmidt
Pattern Languages of Program Design 2. Vlissides, Coplien, & Kerth
Pattern Languages of Program Design 3. Martin, Riehle, Buschmann
Patterns, from the SIGS White Paper Series. James O. Coplien.
Pattern-Oriented Software Architecture - A System of Patterns. Buschmann et. al.
Taming C++: Pattern Classes and Persistence for Large Projects, Jiri Soukup, Addison-Wesley, 1994
A Timeless Way of Building. C. Alexander.
A Pattern Language C. Alexander.
Smalltalk Patterns: Best Practices. Kent Beck.
Analysis Patterns: Reusable Object Models. Martin Fowler
Concurrent Programming in Java: Design Principles and Patterns. Doug Lea
Patterns of Software: Tales From the Software Community. Richard P. Gabriel
OpenDoc Patterns: Designing Parts for OS/2, Windows, UNIX and the Macintosh. Robert L. Tycast, Kirk Searls
Corba Design Patterns. Thomas Mowbray and Raphael Malveau
Framework-based Software Development in C++. Gregory F. Rogers
The Design Patterns Smalltalk Companion. Sherman R. Alpert, Kyle Brown, and Bobby Woolf
A Little Java, A Few Patterns. Matthias Felleisen & Daniel P. Freeman
Cognitive Patterns: Problem Solving Frameworks for Object Technology. Karen Gardner, Alex Rush, Bob Konitzer, Mike Crist and Bobbin Teegarden
AntiPatterns: Refactoring Software, Architectures, and Projects in Crisis. William J. Brown, Raphael C. Malveau, Hays W. "Skip" McCormick III and Thomas J. Mowbray
Pattern Hatching: Design Patterns Applied. John Vlissides


Data Model Patterns: Convention of Thought

by David C. Hay. Dorset House Publishing, 1995.

The book discusses common data modeling patterns about people, organization products, activities, contracts, accounting, and various aspects of manufacturing. It takes a data modeling approach, in contrast to an object modeling approach, but the topics it addresses are relevant to anyone doing business programming.

ISBN 0-932633-29-3. You can order direct from Dorset House Publishing by calling 1-800-342-6657 or 212-620-4053.


Design Patterns: Elements of Reusable Object-Oriented Software

by Erich Gamma, Richard Helm,Ralph Johnson, and John Vlissides.
Addison Wesley. October 1994.

More Information

From the Preface:

... a book of design patterns that describes simple and elegant solutions to specific problems in object-oriented software design. Design patterns capture solutions that have developed and evolved over time. Hence they aren't the designs people tend to generate initially. They reflect untold redesign and recoding as developers have struggled for greater reuse and flexibility in their software. Design patterns capture these solutions in a succinct and easily applied form.

Design Patterns is part of the Addison-Wesley Professional Computing Series, a series that encompasses the state of the art in programming languages, operating systems, and network technology. Published October 1994, $37.75, 416 pages, hardback, ISBN 0-201-63361-2. For ordering information, call Addison Wesley toll-free at (800) 822-6339, email bkexpress@aw.com or contact your local Addison-Wesley representative.


Design Patterns for Object-Oriented Software Development

Wolfgang Pree.
Addison Wesley. 1995.

ISBN 0-201-422948. $39.75. For ordering information, call Addison Wesley toll-free at (800) 822-6339, or contact your local Addison-Wesley representative.


Object Models: Strategies, Patterns, & Applications

Peter Coad with David North & Mark Mayfield.
Prentice Hall. 1995.
Using detailed, real-life examples, this book/disk package shows how to build effective object models--using applications that occur in nearly every industry. Presents five chapter-length application examples of how effective, real-life object-models are built--including point-of-sale, warehousing, order-processing, and data acquisition and control. Each application reveals specific "how-to" strategies (148 in all) and patterns (31 in all) that will help readers develop an intuitive feel for building object models. More details.

Also available: the Strategies and Patterns Handbook, a hypertext version of Chapter 7 in this book. (Windows help file format). The hypertext edition of the handbook is available free, via ftp.

Published by Prentice Hall. 1995, 505 pp., cloth. ISBN 0-13-108614-6. Available at 10% discount off US list price from Computer Literacy Bookstore if you mention the ordering code PC.


Pattern Languages of Program Design

Edited by James O. Coplien and Douglas C. Schmidt.
Addison-Wesley (Software Patterns Series), 1995.

Preface, Table of Contents, Cover, More Info.

The chapters in this book are based on papers presented at the First Annual Conference of Pattern Languages of Programming (PLoP) held near Monticello, Illinois, in August of 1994. This book is more than just a compendium of conference papers, however. It represents a broad offering from a new body of literature focusing on patterns and pattern languages. This book constitutes what we expect to be the first in a series of similar edited works on an ever-broadening spectrum of software patterns and pattern languages.

Pattern Languages of Program Design 2

Edited by John M. Vlissides, James O. Coplien, and Norman L. Kerth.
Addison-Wesley (Software Patterns Series), 1996.

Preface, Table of Contents, Cover, More Info.

This volume, with contributions from the biggest names in the patterns community, is the second in a series documenting patterns for professional software developers. These patterns capture solutions to a plethora of recurring problems in software design and development, including language-specific patterns and idioms; general- and special-purpose patterns; architectural patterns; process and organizational patterns; expositional patterns; and patterns for concurrent programming, distributed systems, and reactive systems. This new collection not only reveals secrets of great software professionals but also makes those secrets easy to apply to your own work.

Pattern Languages of Program Design 3

Edited by Robert C. Martin, Dirk Riehle, and Frank Buschmann.
Addison-Wesley (Software Patterns Series), 1997.

Table of Contents, More Info.

A collection of the current best practices and trends in the patterns community, this title provides software design solutions for professional developers. This third volume is the first to include international submissions, giving the editors even more high-quality essays from which to choose.

Patterns

James O. Coplien

The Patterns White Paper.

Though this paper is the work of a single author, it reflects the work of dozens of individuals. It draws directly on the contributions of many pattern writers and pattern thinkers, which takes the material outside my immediate sphere of thought. In fact, the following pages probably bear more of my colleagues words than my own; primarily I provide the arrangement, and the glue that tie the pieces together.

James O. Coplien, from Patterns

Written by one of the Patterns gurus, this is the definitive white paper on a topic that is rapidly changing how we develop software. It defines the Patterns approach, shows its application relationships in developing software, presents examples of implementations, and explores the strengths and weaknesses of the approach.
August 1996. 40 Pages. Price $85. ISBN 1-884842-50-X.

Pattern-Oriented Software Architecture - A System of Patterns

Frank Buschmann, Regine Meunier, Hans Rohnert, Peter Sommerlad, Michael Stal.
Wiley and Sons Ltd., 1996
Pattern-oriented software architecture is a new approach to software development. This book, influenced by the pattern community at large, represents the progression and evolution of the pattern approach into a system of patterns capable of describing and documenting large-scale applications.
Table of Contents, Overview ...
Wiley, 1996. 458+pp. ISBN 0-471-95869-7

Taming C++: Pattern Classes and Persistence for Large Projects

by Jiri Soukup
Addison-Wesley, 1994.

More Information, Sample Chapter

The relationships and cooperation of C++ classes is a central issue in large project development, in testing, and in maintenance. Taming C++ takes a fresh look at the complex organization typical for large C++ systems and shows how this problem can be minimized by avoiding cyclic dependencies between classes, and by implementing the original object-oriented design so that it remains visible in the final code. This book shows you, through extensive examples, how to design and write C++ code using a new type of class - the pattern class - which helps you produce layered class organization with limited cyclic dependencies. The book then focuses on another problem of large project development - persistent data - integrating it with its general approach and providing copious implementation details unavailable elsewhere.

ISBN #0-201-52826-6. Addison-Wesley, 1994. $48.50, 416 pages.


The Timeless Way of Building

by C. Alexander.
Oxford University Press, 1979. ISBN 0-19-502402-8

A Pattern Language

by C. Alexander, et al.
Oxford University Press, 1977. ISBN 0-19-501-919-9.

Smalltalk Patterns: Best Practices

by Kent Beck.
This book describes the style of expert Smalltalk programmers. It is organized as a sequence of patterns, which means that it can be learned one bit at a time. It is a programming style guide for Smalltalk that shows how to communicate with program code in the clearest fashion. If you would like to become an expert Smalltalk programmer, you should read this book.
Prentice Hall, 1997, 256 pp., ISBN 0-13-476904-X.

Analysis Patterns: Reusable Object Models

by Martin Fowler.

More information, Table of Contents...

Addison-Wesley, 1997, 672 pp., ISBN 0-201-89542-0


Concurrent Programming in Java: Design Principles and Patterns

by Doug Lea

Online Supplement
More Information, Table of Contents
ISBN 0-201-69581-2 published by Addison-Wesley, October 1996. 352 pp.

Patterns of Software: Tales From the Software Community

by Richard P. Gabriel

Essays, often deep and thought-provoking, are originally from JOOP, but were updated for the book. Forward by Christopher Alexander.

More Information...

ISBN 0-10-510260-X. Oxford, 1996. 256 pp.


OpenDoc Patterns: Designing Parts for OS/2, Windows, UNIX and the Macintosh

by Robert L. Tycast, Kirk Searls

Rather than just another introduction to OpenDoc, this book looks at the topic from the intriguing and ultimately enlightening perspective of patterns. Two of the hottest topics in software development, OpenDoc and patterns combine to draw on the ease and convenience of objects and the phenomena of reading and using patterns to facilitate the efficient creation of code. A complete case study leads you through a real-life example of each pattern. Just a few of the topics covered include developing applications for an international audience, using OpenDoc across all platforms, and achieving interoperability.
More Information...

Paperback/CD-ROM Set, ISBN: 0-471-14835-0, October, 1996
Wiley Computer Publishing


CORBA Design Patterns

by Thomas Mowbray and Raphael Malveau

Making distributed applications using CORBA and design patterns.
More Information...

Paperback/CD-ROM Set, ISBN 0-471-15882-8 January '97 416 pages $49.95
Wiley Computer Publishing


Framework-Based Software Development in C++

by Gregory F. Rogers

Presents a methodology for developing class frameworks based on a catalog of Design Patterns. These patterns assume an infrastructure consisting of ANSI C++/STL, CORBA and ODMG-93.

More information, Table of Contents, etc...

Paperback ISBN 0-13-533365-2 January '97 400 pages
Prentice-Hall, Inc.


The Design Patterns Smalltalk Companion

by Sherman R. Alpert, Kyle Brown, and Bobby Woolf

A companion to Design Patterns: Elements of Reusable Object-Oriented Software, illustrating the patterns in Smalltalk.

More information, Table of Contents, etc...
Addison Wesley


A Little Java, A Few Patterns

by Matthias Felleisen & Daniel P. Freeman

Bringing ideas from functional programming to objects and patterns.

More information, Table of Contents, etc...
MIT Press


Cognitive Patterns: Problem Solving Frameworks for Object Technology

by Karen Gardner, Alex Rush, Bob Konitzer, Mike Crist and Bobbin Teegarden

Publisher is Cambridge University Press (1998), ISBN 0-521-64998-6.


AntiPatterns: Refactoring Software, Architectures, and Projects in Crisis

by William J. Brown, Raphael C. Malveau, Hays W. "Skip" McCormick III and Thomas J. Mowbray
Wiley. 1998

AntiPatterns clarify the negative patterns that cause development roadblocks due to poor management, lack of architectural control or personality clashes. The AntiPatterns book shows how to detect and defuse 40 of the most common AntiPatterns. Each AntiPattern provides a refactored solution for both the symptoms and the cause(s). The books classifies the AntiPatterns into: * Managerial (managing processes and people) * Architectural (defining a technical strategy) * Developmental (coding practices)

Pattern Hatching: Design Patterns Applied

More Info

by John Vlissides
Addison-Wesley (Software Patterns Series), 1998

This succinct, example-driven book empowers practicing software developers who are using design patterns, arguably today's most popular object-oriented programming concept. Design Patterns' co-author John Vlissides blends his intimate knowledge of the pattern development process with practical techniques for better pattern application. The result is a thought-provoking guide that will help you improve your next software design by putting patterns to work successfully. Pattern Hatching demystifies the fine points of patterns, placing them in the broader context of basic object-oriented design principles. It dispels many of the misconceptions about patterns that have spread in the software development community—clearly articulating what patterns are and how they ease the development process. The book also presents themes and variations on several established patterns, yielding many new insights. With the instruction in this book, you will become better able to tailor patterns to the design problem at hand.


Patterns Home Page