Design Patterns
Design patterns are divided into three:
- Creational
- Structural
- Behavioral
The must know patterns for each category are:
- Creational: Singleton, Builder, Factory.
- Structural: Facade, Adapter.
- Behavioral: Strategy, Observer.
Must know concepts
- Abstract Factory
- Adapter
- Composite
- Decorator
- Factory Method
- Observer
- Strategy
- Template Method
Descriptions of communicating objects and classes that are customized to solve a general design problem in a particular context.
Describes simple and elegant solutions to specific problems in object-oriented software design. Implementing these patterns represents more work than doing an ad hoc solution, but you gain increased flexibility and reusability.
Each pattern has four essential elements:
- Pattern name
- Problem
- Solution
- Consequences
Reuse successful designs by basing new designs on prior experience.