Building a multi-package project with flutter
Hi, my name is Rodrigo Martins, I’m a senior software engineer at EBANX, and I’m here to share a little bit about the latest project that I’m working on.
The main idea of this project is:
Run the application in multiple countries from Latin America, and to do that we need to have a well-designed and modular architecture. And this imposes some challenges like, the signup feature from Argentina is different from the signup flow of Chile, so we need to split features by package for example:
- sign_up_ar
- sign_up_ch
So in our application, we can use some sort of coordinator/navigator based on the locale that the app is running to understand which package we need to use.
We spend some time thinking and creating POC’s (proof of concept) about how the architecture must be to accomplish that goal, and in the process, we ask ourselves questions like:
- Are the responsibilities of the major areas well defined and appropriate?
- Is the collaboration between major components well defined?
- Is coupling minimized?
- Can you identify potential sources of duplication?
- Are interface definitions and constraints acceptable?