What is a pattern?
"Each pattern describes a problem which occurs over and over again in our environment, and then describes the core of the solution to that problem, in such a way that you can use this solution a million times over, without ever doing it the same way twice"Christopher Alexander
According to Alexander, pattern is a solution to the problem in certain context.
There are many descriptions and definition of patters, but all of them are
basically derived form the Alexander's definition.
The definition of pattern was refined and expanded through the work of James Coplien. The next slide gives a more detailed description of the pattern definition outlined by James Coplien.