/SolidSample

Primary LanguageC#MIT LicenseMIT

SolidSample

This repository contains a demo that demonstrates the principles and rules of SOLID programming. The goal of this project is to provide a practical demonstration of the SOLID principles, a set of design principles for writing maintainable and scalable software. Have a look and browse the branches!

SOLID Principles

SOLID is an acronym that stands for:

  • Single Responsibility Principle (SRP): A class should have only one reason to change.
  • Open/Closed Principle (OCP): Software entities (classes, modules, functions) should be open for extension but closed for modification.
  • Liskov Substitution Principle (LSP): Subtypes must be substitutable for their base types.
  • Interface Segregation Principle (ISP): Clients should not be forced to depend on interfaces they do not use.
  • Dependency Inversion Principle (DIP): High-level modules should not depend on low-level modules. Both should depend on abstractions.