SOLID Rollup of the SOLID principles So, the SOLID principles: * S - Single Responsibility Principle [https://gavinjl.ghost.io/s-is-for-single-responsibility-principal/] * O - Open / Closed Principle [https://gavinjl.ghost.io/open-closed-principle/] * L - Liskov Substitution Principle [https://gavinjl.ghost.io/liskov-substitution-principle/] * I - Interface Segregation Principle [https://gavinjl.ghost.io/interface-segregation-principle/
C# Upturn your dependencies with the Dependency Inversion Principle I thought this was going to be the simplest principle to explain but after looking at descriptions of it I found the language to be difficult to follow. It took me longer to understand and document than all the other principles put together. The
SOLID Goodbye monolithic interfaces – the Interface Segregation Principle “No client should be forced to depend on methods it does not use” (more wikipedia [https://en.wikipedia.org/wiki/Interface_segregation_principle]) This refers to a situation where an interface has more methods than is good for it. If you've got
Design Switch? Swap? Exchange? Substitution! L is for Liskov Substitution Principle The L in SOLID is the Liskov Substitution Principle. This one is simple, according to Wikipedia [https://en.wikipedia.org/wiki/Liskov_substitution_principle]this means: Let Φ(x) be a property provable about objects x of type T. Then Φ(y) should be
SOLID Its open but it’s also closed. The Open/ Closed principle! “A class should be open for Extension but Closed for modification.” This means you should be able to extend the class with additional functionality but the class itself should need no further modifications with the exception of bug fixing. So below we've
SOLID S is for Single Responsibility Principle I'm currently taking a look at some design basics and starting with the SOLID principles, part one is of course the Single Responsibility Principle. "Each class should have a single reason to change." Let’s explore what ‘reason to change’