Good Design




Pattern Forms

There are many different ways to write patterns. Different authors have different way of organizing the ideas presented. Alexander's original patterns were presented in a fairly informal, narrative style. The patterns presented in "Design Patterns" book were much more fine grained, decomposing each pattern into many sections. The structure used depends on several factors. Each author has his or own preferences. Different subject matters may influence the structure. For example more technical subject areas can call for patterns with more structure. Different audiences may call for different structures as well, novice readers may prefer a more prosy style, while more experienced readers may prefer a more structured approach. The form chosen for this site is a middle of the road one, not as prosy as Alexander's patterns in A Pattern Language, yet not as structured as "Design Patterns" book either.

What matters is that there is a consistent structure so patterns are easier to understand and compare.

Most people would agree that there must be at least five elements in every pattern: a name; a problem description; the context of the problem; the solution; and the rational for the solution. This web site uses the following sections for each pattern:


The name of the pattern.


A brief description of the pattern. No more than a few sentences.


A description of the problem to be solved.


The context that the problem appears in. Some problems only arise in certain contexts. Different contexts could require different solutions, leading to different patterns.


A description of the elements that influence the problem. These are issues that the effect the solution, and that the solution will try to fix.


The way to fix the problem.


Sample(s) of how to apply the pattern. Usually a simple, made-up demonstration.


Includes a rationale for the pattern. Explains why this solution works, and possibly why the solution might not work in certain contexts.

Related Patterns

A list of patterns which may be similar to, specializations of, or generalizations of this pattern. Will discuss how similar patterns differ.

Known Uses

Describes existing documents where instances of the pattern exist.

Page 3 of 5
<<History of Software Patterns| Contents | Good XML Structural Design>>
Visit our sponsors: (Interested in advertising on XMLPatterns.com?)