Effective Program Structuring with the Dependency Inversion Principle
How Abstraction and Inversion Produces More Flexible Code
7 min readOct 11, 2018
In the previous four parts of the SOLID series we discussed how to compose object-oriented code that is flexible, maintainable, and reusable. Achieving this goal requires careful attention to how a particular entity (class, module, function, object…