What is a pattern?

Unlike an entire pattern language, which is open-ended and ateleological (see Ateleological Design) a pattern is a tightly structured essay about how a part of the world works, and must work. Hold that thought.

Below is a description of a pattern. It might not make sense to you at first, but make note of this description, and then we'll use an example to make it clearer.

A pattern is a configuration of elements that keep recurring in a characteristic way -- literally speaking, in a "pattern." But a pattern in design has an extra ingredient. The elements of the pattern are related in a "strong configuration" - they can't be pulled out of this configuration without causing the failure of the pattern. That's the essence of the pattern.

But patterns can be added to other patterns in endless combinations, and in "weak configurations." This ability produces their language-like flexibility, versatility and power.

OK, that's a whole lot to chew on. Now let's look at an example, so we can understand what this means in practice -- and why it's useful for design.