Hi! 👋 I'm learning Object-Oriented Design Patterns using Java. This repository is my personal learning lab where I:
- 👨💻 Implement each design pattern from scratch
- 📚 Understand the real-world use case for each pattern
- 🧠 Learn to write clean, reusable, and maintainable code
This repo will gradually include examples from all three main categories:
- Creational (e.g., AbstractFactory, Builder, Factory, Prototype, Singleton)
- Structural (e.g., Adapter, Bridge, Composit, Decorator, Facade, Flyweight, Proxy)
- Behavioral (e.g., Chain Of Responsibility, Command, Iterator, Mediator, Memento, Observer, State, Strategy, Template, Visitor)
Each folder contains:
- ✅ Java source code
- ✅ Comments explaining the flow
- ✅ A mini real-world analogy (when possible)
By the end of this project, I want to:
- Deeply understand design patterns
- Be interview-ready for Java developer roles
- Write better architecture in real-world projects
To supplement my learning, I’m referring to these excellent resources:
- 🔗 DigitalOcean Java Design Patterns Tutorial
- 🔗 Refactoring Guru – Design Patterns in Java
- 🔗 Source Making
- 🔗 Open Source Java Design Patterns
- 🔗 OODesign.com
⭐ Feel free to explore and suggest improvements!