Sep 27, 2023
thanks for this insightful article.
I came up with an architecture that has some similarities with your TCA variant as all components communicate with specific DSLs encoded as enum cases, like your send(.increment). I also keep a central store for the complete app state.
It differs from yours in that it splits the code into UseCases and Features.
* https://betterprogramming.pub/agile-architecture-in-swift-a7b5a4fc9773
* https://betterprogramming.pub/an-architecture-for-behaviour-driven-development-in-swift-8cd6e6f34a2f
and more https://decodemeester.medium.com/