Why use patterns?
Patterns help you learn from other’s successes, instead
of your own failures
Mark Johnson (cited by B. Eckel)
An additional layer of abstraction
- separate
things that change from things that stay the same
- distilling
out common factors between a family of similar problems
- similar
to design
Insightful and clever way to solve a particular class of problems
- most
general and flexible solution
Algorithmic form of patterns
IF
you find yourself in CONTEXT
for example EXAMPLES,
with PROBLEM,
entailing FORCES
THEN for some REASONS,
apply DESIGN FORM AND/OR RULE
to construct SOLUTION
leading to NEW CONTEXT and
OTHER
PATTERNS