Design Patterns
- Revision of Concepts of OOP
- Importance of learning design patterns
- Structural Design Patterns
- Behavioral Design Patterns
- Creational Design Patterns
- Creational Patterns– Singleton, Factory
- Factory Method
- Abstract Factory
- Object Pool
- Prototype in Design Pattern
- Builder in Design Pattern
- Chain of Responsibility
- Command, Interpreter, Iterator
- Mediator, Memento, Observer
- Strategy Template Method
- Visitor and Null Object
- Structural Patterns – Adapter
- Bridge, Composite, Decorator
- Flyweight and Proxy
- REFACTORING CODE SMELL
- Different type of code smells
- Inappropriate Naming
- Comments, Dead Code, Duplicated code
- Primitive Obsession
- Large Class
- Lazy Class
- Alternative Class with Different Interface
- Long Method, Long Parameter List
- Speculative Generality
- Oddball Solution
- Feature Envy
- Refused Bequest
- Black Sheep and Train Wreck
- Design Principles (SOLID)
- Single responsibility principle
- Open Close Principle
- Liskov substitution principle
- Interface segregation principle
- Dependency Inversion principle