Design pattern
From Wiki @ Karl Jones dot com
A design pattern in architecture and computer science is a formal way of documenting a solution to a design problem.
Contents
Description
The idea was introduced by the architect Christopher Alexander in the field of architecture, and has been adapted for various other disciplines, including computer science.
An organized collection of design patterns that relate to a particular field is called a pattern language.
The elements of this language are entities called patterns. Each pattern describes a problem that 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
The usefulness of speaking of patterns is to have a common terminology for discussing the situations designers already see over and over.
Fields
Design patterns are used in many fields.
Some design patterns may extend across multiple fields.
See also
- Analogy
- Anti-pattern a counterpart term, referring to a common situation that creates problems
- Architectural pattern - a general, reusable solution to a commonly occurring problem in software architecture - similar to software design pattern having a broader scope
- Design
- Design paradigm
- Design Patterns: Elements of Reusable Object-Oriented Software - software engineering book describing recurring solutions to common problems in software design
- Interaction design pattern, used in interaction design / human-computer interaction
- Pattern
- Pattern (architecture)
- Pattern language
- Pattern matching
- Pattern recognition
- Pedagogical patterns, in teaching
- Problem solving
- Software design pattern - a general reusable solution to a commonly occurring problem within a given context in software design - similar to Architectural pattern but having narrower scope
- Structure
- Style guide, repeatable graphic design elements and styles
External links
- Design pattern @ Wikipedia