This repository contains examples of the five SOLID design principles of object-oriented programming. The examples are written in C# using .NET Core. Each example has a "violation" and "solution" version to demonstrate the principle.
- Single Responsibility Principle
- Open/Closed Principle
- Liskov Substitution Principle
- Interface Segregation Principle
- Dependency Inversion Principle
Also, some design patterns are used:
- Repository pattern
- Strategy pattern