This repository contains some programs for learning OOD using c++
https://github.com/prasadgujar/low-level-design-primer Parking Lot:
1> https://www.educative.io/courses/grokking-the-object-oriented-design-interview/gxM3gRxmr8Z
2> https://www.geeksforgeeks.org/design-parking-lot-using-object-oriented-principles/
3> https://www.youtube.com/watch?v=DbTdg-Nov50&list=PLGLfVvz_LVvS5P7khyR4xDp7T9lCk9PgE&index=6
4> https://www.codeproject.com/Articles/1137299/Object-Oriented-Analysis-and-Design
5> http://www.math-cs.gordon.edu/courses/cs211/AddressBookExample/index.html
6> https://www.itu.dk/people/slauesen/Papers/Oo-real.pdf
7> https://stackoverflow.com/questions/1100819/how-do-you-design-object-oriented-projects
8> https://www.linkedin.com/pulse/cracking-he-low-level-design-lld-interview-shashi-bhushan-kumar/
9> https://www.bogotobogo.com/DesignPatterns/introduction.php
10> https://refactoring.guru/design-patterns
11 > https://medium.com/must-know-computer-science/basic-design-patterns-in-c-39bd3d477a5c
- Resource and booking systems
Pattern: limited resources, time slots, no double booking, fair allocation.
- Design a Parking Lot
- Design a Parking Lot - Multi Threaded
- Design a Simple Elevator System - Multiple Lifts
- Design Elevator Management System - Single Lift
- Design an Elevator System - Request Feasibility (Single Lift)
- Design a Train Platform Management System
- Design a Meeting Room Reservation System
- Design a Meeting Room Scheduler - List Bookings
- Design a Meeting Room Scheduler for Recurrent Meetings
- Design a Car Rental System
- Design Locker Management System for Warehouse Packages
- Design a Movie ticket booking system like BookMyShow
- Money, commerce and pricing flows
Pattern: orders, payments, balances, revenue split, leaderboards around money or points.
- Design a restaurant food ordering system like Zomato, Swiggy, DoorDash
- Design expense sharing app like Splitwise
- Design Stock Trading Platform like Zerodha, Groww
- Design a Shopping Cart
- Design a Payment Wallet like PayPal
- Design an order and inventory management system - Multi Threaded
- Design Product Plan Cost Explorer
- Design a customer support agent rating leaderboard
- Design a Leaderboard for Fantasy Teams
- Design Last Lap Hero (F1 Race Tracker)
- Editors, spreadsheets and office tools
Pattern: document state, operations on content, formulas, undo or recalculation.
- Design a Text Editor or Word Processor like Microsoft Word
- Design a Text Editor with Undo and Redo
- Design a Text Editor with cursor operations and Basic Editing
- Design a Text Editor with cursor operations
- Design spreadsheet like Microsoft Excel
- Design Excel Sum Formula
- File systems, search and storage
Pattern: hierarchical paths, metadata, indexing, queries on files or logs.
- Design Unix
findcommand for file search - Design Unix
findcommand with boolean predicates - Design File System (cd with
-) - Design File System
- Design In Memory File System
- Design File Collections Tracker
- Design Log Storage System
- Search, lookup and dictionaries
Pattern: key based lookup, tries, prefix search.
- Design Dictionary App to store words and their meanings
- Design Phone Directory
- Design Google Search Autocomplete
12 > https://github.com/prasadgujar/low-level-design-primer/blob/master/resources.md