This article’s main goal is to teach you about this subject that I am passionate about. After writing two books about design patterns (In Brazil), I started this series of articles to share through them and help you become a more professional developer.
My advice is to focus on the examples and try to think in different situations that you have a similar problem; it doesn’t matter which industry or type of project you work with.
All we need to know in this example is that this application has the following responsibilities: Regarding the code of this project/repository.
The flow looks like that: It's a lot of code that already exists, but today it happens for individual products, and it is a complete mess.