The main thing (and perhaps the only) I dislike ab...
# android
a
The main thing (and perhaps the only) I dislike about Android architecture is lack of proper constructors for Activities/Fragments/Services. This forces developers to use clumsy solutions for DI as well as reinvent a yet another MVP/MVC/MVVM library or framework each month which does not actually work the way the proper MVP/MVC/MVVM should and does not solve any coupling problems at all. I guess the tradeoff in favor for Intents was made so that any application could launch any component of any application on system (given there are matching intent-filters) and it is probably great idea, but the majority of actual usecases is: share and open a link in a browser. The implementation of components communication via intents is also very limited, disallowing developers to create any meaningful interaction between different apps. I think if the whole components system was split into 2 less generalized yet more thought-out subsystems, 1 for communication between components in app you own, and another for interaction between components in your app and any other, then the apps today might have deeper integration between each other as well as offer more pleasant developer experience.
👍 1