- Design patterns are typical solutions to commonly occurring problems in software design.
- It's like pre-made blueprints that you can customize to solve a recurring design problem in your code.
- The pattern is not a specific piece of code, but a general concept for solving a particular problem.
- It's not a finish solution
- A template or recipe for solving problems
- Creational patterns provide object creation mechanisms that increase flexibility and reuse of existing code.
- Structural patterns explain how to assemble objects and classes into larger structures, while keeping the structures flexible and efficient.
- Behavioral patterns take care of effective communication and the assignment of responsibilities between objects.
- Creational patterns
[x] Factory
[x] Prototype - Structural Patterns
[ ] Adapter
[ ] Bridge
[ ] Filter
[ ] Composite