Licensed under either of
- Apache License, Version 2.0 (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT)
at your option.
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.
This repository contains sample code and explanations for various Object-Oriented Programming Design Patterns implemented in Dart language.
Patterns Covered Requirements Getting Started Usage Contributing License Introduction Object-Oriented Programming (OOP) Design Patterns are reusable solutions to commonly occurring problems in software design. They help to make software more modular, flexible, and maintainable by providing a way to create a blueprint for solving a specific problem that can be reused in different situations.
Dart is a modern object-oriented programming language that is used for building web, mobile, and server-side applications. This repository provides examples of OOPs Design Patterns implemented in Dart language.
This repository covers the following OOPs Design Patterns:
- Singleton
- Factory Method
- Abstract Factory
- Builder
- Prototype
- Adapter
- Bridge
- Composite
- Decorator
- Facade
- Flyweight
- Proxy
- Chain of Responsibility
- Command
- Interpreter
- Iterator
- Mediator
- Memento
- Observer
- State
- Strategy
- Template Method
- Visitor Each pattern has its own directory with an implementation in Dart, and a README file explaining the pattern and how it was implemented.
To run the examples, you need to have the following installed on your machine:
Dart SDK
To get started, you can clone this repository using Git:
git clone https://github.com/<your-username>/oops-design-patterns-dart.git
Each pattern has its own directory with an implementation in Dart, and a README file explaining the pattern and how it was implemented. To run the examples, navigate to the directory of the pattern you are interested in and run the following command:
dart main.dart
If you find any issues or want to contribute to this project, feel free to create a pull request or open an issue.
This project is licensed under the MIT License - see the (LICENSE-MIT or http://opensource.org/licenses/MIT) file for details.