Difference between revisions of "Design pattern"

From Wiki @ Karl Jones dot com
Jump to: navigation, search
(See also)
Line 20: Line 20:
  
 
* [[Analogy]]
 
* [[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]]
 +
* [[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]]
 +
* [[Pattern (architecture)]]
 
* [[Pattern language]]
 
* [[Pattern language]]
 
* [[Pattern matching]]
 
* [[Pattern matching]]
 
* [[Pattern recognition]]
 
* [[Pattern recognition]]
 +
* [[Pedagogical patterns]], in [[teaching]]
 
* [[Problem solving]]
 
* [[Problem solving]]
* [[Software design pattern]]
+
* [[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]]
 
* [[Structure]]
 +
* [[Style guide]], repeatable graphic design elements and styles
  
 
== External links ==
 
== External links ==

Revision as of 15:36, 8 May 2016

A design pattern in architecture and computer science is a formal way of documenting a solution to a design problem.

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

External links