- Typical solutions to commonly occurring software design problems.
- Types of design patterns,
- Creational Patterns
- Structural Patterns
- Behavioural Patterns
Creational Patterns §
- Deals with object creation mechanisms that increases code reuse and flexibility
- Types (Mnemonic: Builder FAPS),
Structural Patterns §
- Explains how to assemble objects and classes into bigger structures
- Types (Mnemonic: ABCDFFP)
- Adapter
- Bridge
- Composite
- Decorator
- Facade
- Flyweight
- Proxy
Behavioural Patterns §
- Deals with communication and allocation of responsibilities between objects
- Types (Mnemonic: CMICMOSSTV),
- Chain of responsibility
- Mediator
- Iterator
- Command
- Memento
- Observer
- State
- Strategy
- Template method
- Visitor
Refs §
- https://refactoring.guru/design-patterns/