A Parking Lot Management System implemented in C++ following Low-Level Design (LLD) principles.
This project demonstrates object-oriented design, clean code practices, and a modular approach to solving real-world system design problems.
- Support for different vehicle types (Car, Bike, Pickup Truck).
- Slot allocation and deallocation with status tracking (Reserved, Vacant).
- Ticket generation with entry/exit time tracking.
- Parking charges calculation (extendable for real-world billing logic).
- Modular design using classes, enums, and encapsulation.
- Easily extendable for new vehicle types, slot management strategies, or payment systems.
The system consists of the following main components:
- Vehicle Class β Stores details of a vehicle (type, registration number, entry/exit time).
- ParkingLot Class β Manages slots, floors, and parking availability.
- Ticket Class β Represents a parking ticket, tracks status and charges.
- Parking Class β Manages the overall parking facility (capacity, society/tower information).
- Language: C++
- Paradigm: Object-Oriented Programming (OOP)
- Concepts Used: Enums, Classes, Encapsulation, Inheritance, Composition