In Software Design- Design Patterns are reusable solutions to commonly occurring problems. The word “pattern” means if similar kind of problem occurs across multiple applications/in different situations, then this problem can be solved in a standard way. Each Design Pattern concentrates on a particular aspect of the problem.
Each Pattern consists of the following-
- The pattern name
- The Problem & Conditions to which it may be applied
- The Solution
- The Consequences
According to the uses and purposes Design Patterns are categorized into 3 areas.
- Creational Design Pattern- Handles the class object creation process or class instantiation
- Behavioral Design Pattern- Focuses on the object behavior and responsibility
- Structural Design Pattern- Focuses on the structure of different objects
|Creational Patterns||Behavioral Patterns||Structural Patterns|
|Singleton||Chain of Responsibility||Adapter(Object/Class)|