Abstraction Layers

Introduction This long-due article will conclude the series on Entity Component System Code Design and will explore the idea of Inversion of Control layers applied to ECS. I design code in terms of layers for quite some time now and, in fact, I have hinted at it several times inRead More →

Note: this article is now outdated. The new version is found at: https://www.sebaslab.com/the-new-svelto-ecs-survival-mini-example/ Introduction Lately I have been discussing Svelto.ECS extensively with several, more or less experienced, programmers. I gathered a lot of feedback and took a lot of notes that I will be using as starting point for myRead 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 →