Member-only story
Why Clean Architecture And Domain Driven Design Are Not Used In Flutter App Architecture
The major firms that are always invited to Google IO to show off Flutter such as GSkinner and Very Good Ventures never use either Clean Architecture or Domain Driven Design in their flutter app architectures. Look at the Flokk app source:
https://github.com/gskinnerTeam/flokk/tree/master/flokk_src/lib/services
It uses commands and services, but notice that it’s not using use-cases. And notice that it’s services are facades to repos.
Same with not using MVC, MVP, and MVVM in that it’s a story of re-accessing where we want to inject state dependencies and where we want to decouple dependencies. So what is so wrong about the use-case pattern?
Use Case, A Command Pattern The Wrong Way
Ignore the violating DRY concept of use-case in that we are repeating the repository facade at times. It’s in fact implementing a command pattern between the repository or service to the client and in case of All use-case patterns a presenter. Now, what you do not know about BLoC including how to use streams is that BLoC is a Presenter pattern. The difference is that BLoC presenter pattern is set up in such a way to not imply a use-case command pattern implementation.