Welcome to the Design Patterns repository! This repo provides concise, practical examples of common design patterns in software engineering.
Design patterns are typical solutions to commonly occurring problems in software design. They're like templates that can be applied to real-world programming situations to improve code flexibility, scalability, and maintainability.
Design patterns are generally categorized into three main types:
These patterns deal with object creation mechanisms.
- Singleton
- [] Factory Method
- [] Abstract Factory
- Builder
- [] Prototype
These patterns deal with the composition of classes and objects.
- [] Adapter
- [] Bridge
- [] Composite
- [] Decorator
- [] Facade
- [] Flyweight
- [] Proxy
These focus on communication between objects.
- [] Chain of Responsibility
- [] Command
- [] Interpreter
- [] Iterator
- [] Mediator
- [] Memento
- [] Observer
- [] State
- [] Strategy
- [] Template Method
- [] Visitor
This project is licensed under the MIT License.