Design Patterns And Design Principles Notes
Published in
4 min readMar 5, 2022
Here are my design pattern notes in summary that I’ve already extracted. The order may be mixed, but I noted the important points and concepts.
Design pattern is a general repeatable solution to commonly occurring problem in software design.
- Creational patterns deal with the process of object creation
- Structural patterns, deal primarily with the static composition and structure of classes and objects
- Behavioral patterns, which deal primarily with dynamic interaction among classes and objects
A pattern has four essential elements (GoF)
- Pattern name: increases vocabulary of designers.
- Problem: intent, context, when to apply.
- Solution: UML-like structure, abstract code.
- Consequences: results and tradeoffs.
Name
- Describes the pattern
- Adds to common terminology for facilitating communication (i.e. not just sentence enhancers)
Problem
- Describes when to apply the pattern
- Answers — What is the pattern trying to solve?
Solution
- Describes elements, relationships…