https://github.com/siraajul/lld
This repository contains various low-level system design problems and their solutions, implemented in Java. It focuses on object-oriented design principles, design patterns (creational, structural, behavioral), and real-world system examples such as ride-sharing, hotel booking, and food delivery systems.
https://github.com/siraajul/lld
java low-level-design low-level-design-problems system-design
Last synced: over 1 year ago
JSON representation
This repository contains various low-level system design problems and their solutions, implemented in Java. It focuses on object-oriented design principles, design patterns (creational, structural, behavioral), and real-world system examples such as ride-sharing, hotel booking, and food delivery systems.
- Host: GitHub
- URL: https://github.com/siraajul/lld
- Owner: siraajul
- Created: 2024-10-13T06:45:26.000Z (almost 2 years ago)
- Default Branch: main
- Last Pushed: 2024-10-27T21:05:35.000Z (over 1 year ago)
- Last Synced: 2025-02-01T00:32:36.248Z (over 1 year ago)
- Topics: java, low-level-design, low-level-design-problems, system-design
- Language: Java
- Homepage:
- Size: 95.7 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Low-Level Design (LLD) Repository
Welcome to the **Low-Level Design (LLD)** repository. This repository contains various low-level system design problems and their solutions, implemented in **Java**.
## Overview
Low-Level Design focuses on the detailed design of individual components of a system, including class diagrams, interactions, object-oriented design principles, and design patterns. In this repository, you will find:
- Problem statements
- Design solutions
- Class diagrams
- Code implementations in **Java**
## Table of Contents
- [Introduction](#introduction)
- [Design Principles](#design-principles)
- [Design Patterns](#design-patterns)
- [Implemented Systems](#implemented-systems)
- [How to Contribute](#how-to-contribute)
- [License](#license)
## Introduction
This repository is intended to help developers, students, and engineers understand and implement Low-Level Design concepts, emphasizing Object-Oriented Programming (OOP) and design patterns, using **Java** as the programming language.
## Design Principles
We adhere to key OOP and software design principles, including:
- **SOLID Principles**
- **DRY (Don’t Repeat Yourself)**
- **KISS (Keep It Simple, Stupid)**
- **YAGNI (You Aren’t Gonna Need It)**
## Design Patterns
In this repository, you will find **Java** implementations of various design patterns like:
- **Creational Patterns** (e.g., Singleton, Factory)
- **Structural Patterns** (e.g., Adapter, Facade)
- **Behavioral Patterns** (e.g., Observer, Strategy)
## Implemented Systems
Here are some system design examples and solutions included in the repository, implemented in **Java**:
- **Ride-Sharing System**
- **Hotel Booking System**
- **Food Delivery System**
- **Parking Lot System**
## How to Contribute
We welcome contributions! Please follow the below guidelines:
1. Fork the repository.
2. Make your changes in **Java**.
3. Submit a pull request.
## License
This repository is licensed under the MIT License. See the [LICENSE](LICENSE) file for more details.