This repository contains resources to learn Low Level Design (LLD) / Object Oriented Design (OOD) and prepare for interviews.
- Basics OOP Concepts
- SOLID Principles with Pictures
- SOLID Principles with Code
- DRY Principle
- YAGNI Principle
- KISS Principle
- Coursera - Object-Oriented Design
Creational Patterns | Structural Patterns | Behavioral Patterns |
---|---|---|
Singleton | Adapter | Chain of Responsibility |
Factory Method | Bridge | Command |
Abstract Factory | Composite | Iterator |
Builder | Decorator | Mediator |
Prototype | Facade | Memento |
Flyweight | Observer | |
Proxy | State | |
Strategy | ||
Template Method | ||
Visitor |
- Design Parking Lot
- Design a Vending Machine
- Design Stack Overflow
- Design Logging Framework
- Design Coffee Vending Machine
- Design Traffic Signal Control System
- Design a Task Management System
- Design Pub Sub System
- Design Tic Tac Toe Game
- Design Car Rental System
- Design an ATM
- Design Hotel Management System
- Design LinkedIn
- Design a Social Network like Facebook
- Design an Elevator System
- Design a Library Management System
- Design Restaurant Management System
- Design Airline Management System
- Design a Digital Wallet System
- Design an Online Auction System
- Design a Concert Ticket Booking System
- Design a Cache using LRU Eviction Policy
- Design Movie Ticket Booking System
- Design Splitwise
- Design a Snake and Ladder game
- Design Online Shopping System like Amazon
- Design Online Stock Brokerage System
- Design CricInfo
- Design Chess Game
- Design Ride-Sharing Service (like Uber)
- Design Online Food Delivery Service (like Swiggy)
- Design Music Streaming Service (like Spotify)
- Design University Course Registration System