These pages are based on several books: Gamma et al, Design Patterns: Elements of Reuse in Object Oriented Software; Buschmann et al, A System of Patterns; Pree, Design Patterns for Object-OrientedSoftware Development; and Coplien and Schmidt, Pattern Languages for Program Design. This is meant to be used as a quick tutorial on design patterns.

Much more information on design patterns can be found in the Patterns Home Page, and the Portland Pattern Repository,

What is a design pattern?

Properties of design patterns (Buschmann 1996)

What's in a design pattern?

Description elements

Design Patterns (Gamma et al 1995) uses the following headings in its pattern catalogue: Not all authors use all these headings. Context is often added by other authors (Buschmann 1996).

Patterns provide: