Premise In this article, I am going to explain why I believe the Entity Component System design is a great paradigm to develop simpler to maintain (and therefore less expensive) codebases and also explore the idea to formalise best practices through the application of the SOLID principles, which, at glance,Read More →

The Dependency Inversion Principle is part of the SOLID principles. If you want a formal definition of DIP, please read the articles written by Martin[1] and Schuchert[2]. This is the most difficult principle to get right. I will take a step back from the previous article I wrote and discussRead More →

In this article, I will explain the previously introduced Inversion of Flow control, then I will illustrate how to apply it in OOP and how this can be best achieved using the Entity Component System design. While ECS design apparently seems to have nothing to do with Inversion Of Control,Read More →

If you got here from my previous articles, you may have still many questions unanswered, with one possibly being: why is an IoC container called Inversion Of Control Container? The first answer is: because someone chose historically a bad name[1]. The serious answer is: IoC containers take away the responsibilityRead More →