This demo was created to provide a real world example to the article: The Importance of Inversion of Control and the way to Achieve it using Dependency Injection .
- Java 11
In the root of the project:
./mvnw clean package
java -jar application/target/*.jar
## Project Stages
The article tries to exemplify the evolution of a project from the worst case to a flexible, mainteinable and testeable architecture based on Dependency Injection and Inversion of Control.
- Worst Case: first version with awful design choices.
- Improvable Case: improved version with some intents to solve the problems but not enough yet.
- IoC Version: solution based on Inversion of Control that accomplish all the proposed requirements.
For more context about the project and the topic refer to the article.