Central European Time
The D-KMP architecture: Declarative UIs + Kotlin MultiPlatform + MVI pattern
2021 is the new Year Zero of apps development, with both Jetpack Compose and Kotlin MultiPlatform already in "Alpha" and reaching the "Beta" and "Stable" stage by the end of the year.
This will change forever the way apps are architected and implemented. It will become normal to build apps for all platforms, which share 85% of the code and have the latest native UI/UX.
We will see many Android-specific technologies (LiveData, RxJava, Dagger, Retrofit, Room, etc.) losing their centrality, replaced by KMP technologies such as StateFlow, Coroutines, Ktor, Serialization, SqlDelight, etc.
In this talk I will present the D-KMP architecture which is based on the 3 pillars:
- DeclarativeUIs (JetpackCompose on Android, SwiftUI on iOS, Kotlin/React on Web)
- KMP (Kotlin MultiPlatform)
- MVI pattern (Model-View-Intent)
I am a mobile architect (client/server), with over 10 years experience. I started Android development in 2009 and iOS development in 2015. I am also one of the early Golang adopters, starting in 2013.
I have architected the highest-rated travel app in Europe (called Trenìt!), which has 4.8 stars on both Android and iOS, out of over 110,000 reviews.
I have historically focused on "thin" client architectures, with most logic residing on the webservices. I am now envisioning a future of "rich" client architectures, thanks to declarative UIs and Kotlin MultiPlatform.