Hands-on examples of SOLID principles using a simple shape area calculator in .NET Core. The master branch shows the code before applying the principle (the violation), and the srp branch shows the refactored version.
Before (master branch):
AreaCalculator handles both area calculation AND console output — two reasons to change in one class.
After (srp branch):
Calculation and output are separated into distinct responsibilities.
dotnet run.NET Core 3.1, C# console application.