As we were writing Design Patterns, we knew the patterns we were describing had value because they had proven themselves in many different contexts. Our hope was that other software engineers would benefit from these patterns as much as we had.

Now, three years after its debut, we find ourselves both grateful and thrilled by how the book has been received. Lots of people use it. Many tell us the patterns have helped them design and build better systems. Many others have been inspired to write their own patterns, and the pool of patterns is growing. And many have commented on what might be improved about the book and what they would like to see in the future.

A recurring comment in all the feedback has been how well-suited the book is to hypertext. There are numerous cross-references, and chasing references is something a computer can do very well. Since much of the software development process takes place on computers, it would be natural to have a book like ours as an on-line resource. Observations like these got us excited about the potential of this medium. So when Mike Hendrickson approached us about turning the book into a CD-ROM, we jumped at the chance.

Two years and several megabytes of e-mail later, we're delighted that you can finally obtain this edition, the Design Patterns CD, and put its unique capabilities to work. Now you can access a pattern from your computer even when someone has borrowed your book. You can search the text for key words and phrases. It's also considerably easier to incorporate parts of it in your own on-line documentation. And if you travel with a notebook computer, you can keep the book handy without lugging an extra two pounds of paper.

Hypertext is a relatively new publishing venue, one we are learning to use just like everyone else. If you have ideas on how to improve this edition, please send them to design-patterns-cd@cs.uiuc.edu. If you have questions or suggestions concerning the patterns themselves, send them to the gang-of-4-patterns@cs.uiuc.edu mailing list. (To subscribe, send e-mail to gang-of-4-patterns@cs.uiuc.edu with the subject "subscribe".) This list has quite a few readers, and many of them can answer questions as well as we can—and usually a lot faster! Also, be sure to check out the Patterns Home Page at http://hillside.net/patterns/. There you'll find other books and mailing lists on patterns, not to mention conference information and patterns published on-line.

This CD entailed considerable design and implementation work. We are indebted to Mike Hendrickson and the team at Addison-Wesley for their on-going encouragement and support. Jeff Helgesen, Jason Jones, and Daniel Savarese garner many thanks for their development effort and for patience despite what must appear to have been our insatiable appetite for revision. A special acknowledgment is due IBM Research, which continues to underwrite much of this activity. We also thank the reviewers, including Robert Brunner, Sandeep Dani, Bob Koss, Scott Meyers, Stefan Schulz, and the Patterns Discussion Group at the University of Illinois Urbana-Champaign. Their advice led to at least one major redesign and several minor ones.

Finally, we thank all who have taken time to comment on Design Patterns. Your feedback has been invaluable to us as we strive to better our understanding and presentation of this material.

Zurich, Switzerland E.G.
Sydney, Australia R.H.
Urbana, Illinois R.J.
Hawthorne, New York J.V.

August 1997


Preface to Book
Contents