# Topic covered
* Scalability
* Horizontal, Vertical Scaling
* Load Balancers
* Caching
* Asynchronism
* Message/Task Queues
* Producer consumer model
* Message Broker
* Publisher subscribe model
[Read More]
01-System Design
Intro, Client - Server, Monolith & Microservices, gRPC, Network Protocols, Proxies
# Topic covered
* System Design Introduction
* Client - Server Architecture
* Monolith & Microservices
* gRPC
* Network Protocols
* Proxies
[Read More]
7. Software Design | UML Diagram
UML Diagram
# Topic covered
* UML, Its Benefits
* Types of UML Diagrams
* Structural UML diagrams
* Behavioral UML diagrams
* Interaction Diagrams
[Read More]
8. Software Design | Design Patterns
Behavioral Design Patterns
8. Behavioral Patterns
Chain of Responsibility
Design PatternCommand
Design PatternIterator
Design PatternMediator
Design PatternObserver
Design PatternState
Design PatternStrategy
Design Pattern- Template Method Design Pattern
- Visitor Design Pattern
7. Software Design | Design Patterns
Structural Design Patterns
7. Structural Pattern
Adapter
Design PatternBridge
Design PatternComposite
Design PatternDecorator
Design PatternFlyweight
Design PatternProxy
Design Pattern- Facade Design Pattern
6. Software Design | Design Patterns
Creational Design Patterns
6. Creational Patterns
Creational pattern provides various object creation mechanisms, which increase flexibility and reuse of existing code
.
Factory
Method Design Pattern - ClassBuilder
Design PatternSingleton
Design PatternPrototype
Design PatternAbstract Factory
Design Pattern
5. Software Design | Design Patterns
Introduction to Design Patterns
# Topic covered
* Design Pattern
* Design Pattern vs Algorithms
* Classification of patterns
* Creational patterns
* Structural patterns
* Behavioral patterns
[Read More]
4. Software Design | SOLID Design Principles
Introduction to SOLID Design Principles
# Topic covered
* SOLID Principles
* Issue with BAD Code
* Motivation behind the usage of SOLID Principles
* SOLID
* Single Responsibility Principle (SRP)
* Open closed Principle (OSP)
* Liskov substitution Principle (LSP)
* Interface Segregation Principle (ISP)
* Dependency Inversion Principle (DIP)
[Read More]
2. Software Design | Clean Code
Why and how to write clean code?
# Topic covered
* Clean Code
* Why Clean Code?
* Why write bad code?
* Meaningful Names
* Functions rules
* Comments rules
* Code smells
[Read More]
3. Software Design | OOPs
Object oriented design
# Topic covered
* Classes, Objects
* Inheritance, Polymorphism
[Read More]