Kotlin Multiplatform is one of several approaches to build cross-platform features, or apps, by sharing common code with the Kotlin language. We discuss this approach separately from other cross-platform feature development and app development approaches, thanks to its rapid rise in adoption among large apps and developer teams.
Kotlin Multiplatform was announced in 2017. With it, you can write Kotlin and build:
JVM libraries for Android, or backend services Native framework for iOS and desktop JavaScript artifacts for frontend web or backend services Kotlin Multiplatform The idea behind Kotlin Multiplatform: share business logic code, keep view code as native.
...
When should we onboard to a new language? Should we start to use a new and promising framework? Unfortunately, there are no simple answers and even when you do your research, you might regret the decision you take.
In 2016, Swift was at version 2.2. The engineering team at Uber decided to go 100% with Swift when rewriting Uber’s Rider app. The decision turned out to be an almost disaster - mainly because the team did not expect the binary size for Swift to be multiple times that of Objective C.
...
The more you build native mobile apps, the more you realize the pain that supporting client-side business logic brings, due to the nature of mobile app versions having a long life. The idea of building apps that are mostly backend driven will likely come around sooner or later.
Sending executable logic to the mobile app is treading on thin ice. Apple has prohibited all forms of executable code up until 2017, when they softened this policy for developer tools.
...