Software design pattern
In software engineering, a design pattern is a general reusable solution to a commonly occurring problem within a given context in software design.
A design pattern is not a finished design that can be transformed directly into source or machine code.
It is a description or template for how to solve a problem that can be used in many different situations.
Patterns are formalized best practices that the programmer can use to solve common problems when designing an application or system.
Object-oriented design patterns typically show relationships and interactions between classes or objects, without specifying the final application classes or objects that are involved.
Patterns that imply object-orientation or, more generally, mutable state, are not as applicable in functional programming languages.
Design patterns in other fields
The concept of design patterns originated in architecture and has spread to other fields.
External links
- Software design pattern @ Wikipedia