- Why Design Patterns?
- SOLID principle
- The 23 "Gang of Four" Design Patterns
- For developing highly cohesive code modules with minimal coupling
- To adhere to 'DRY' principle (Don't Repeat Yourself) while writing softwares
- For writing highly scalable software that's easy to extend and maintain
- Common language for communicating technically complex stuff
- Behavioral
- Memento
- State
- Iterator
- Strategy
- Template Method
- Command
- Observer
- Mediator
- Chain of Responsibility
- Visitor
- Interpreter
- Structural
- Adapter
- Bridge
- Composite
- Decorator
- Facade
- Flyweight
- Proxy
- Creational
- Abstract Factory
- Builder
- Factory Method
- Prototype
- Singleton