Knowing a programming language doesn’t make you a software developer. Absolutely every software developer who works with any object oriented language need to be familiar with SOLID principles. For those who are new to programming and doesn’t yet know what those principles are, SOLID is an acronym, which stands for the following:
- Single responsibility principle
- Open-closed principle
- Liskov substitution principle
- Interface segregation principle
- Dependency inversion principle
This repository contains five solution, each demonstrating one of the principles in action. All the solutions contain exactly the same application that is gradually being refactored to adhere to each of the SOLID principles.
For each principle, there is a link to an article that provides more in-depth explanation of what that principle is and why you would need to use it.
Why you must use single responsibility principle
Why open-closed principle is important
Liskov substitution principle in C#