You know the struggle – once your prototype starts to evolve into a full-blown project, it is increasingly difficult to maintain control over the structure of your codebase. Inversion of Control is a software design principle which aims to increase modularity and extensibility. Combined with other battle-proven design patterns such as Model-View-Controller, this can be a powerful toolbox helping you to prevent messy code.
I would like to give you a basic introduction to Strange, an Inversion of Control framework which is used for one of our upcoming InnoGames projects. You will learn how to * Use Bindings to make your class instances injectable * Use Signals for communication between objects * Use Mediators to separate your business logic from your views