➢ Independent codebase for each platform. ➢ Android built using Kotlin, iOS built using Swift ➢ Generally more performant ❖ Cross-platform ➢ Single application that runs in multiple platforms ➢ Using frameworks like React Native or Flutter ❖ Multi-platform ➢ Code Sharing ➢ Share business logic but keep UI native ➢ Using Kotlin multi-platform
Swift and Kotlin ❖ Declarative UI using Swift UI in iOS, and Jetpack Compose in Android ❖ Shared architectures like MVVM, MVI, unidirectional data flow etc ❖ UX similarities The ever increasing convergence of Mobile development
like iOS, Android, desktop and web while retaining the benefits of native programming. ❖ Flexibility: Share the part of code you want from 1% to 100%, from business logic to UI using Compose Multiplatform. ❖ KMP is officially supported by Google for sharing logic between Android and iOS. Most Jetpack libraries now support KMP,
specific APIs like CameraX on Android and ARKit on iOS ❖ Define a common contract in the common code, and provide platform specific implementation for it. ❖ Platform specific compilation. The compiler splits the shared code into two paths. It produces Java bytecode to run on Android runtime and utilizes LLVM toolchain to compile native machine code for iOS producing native-level performance on both platforms