Kotlin Multiplatform Mobile with Ktor
What you'll learn
- Basic experience with Kotlin is recommended.
- Basic experience with GraphQL is recommended.
Welcome to the future of mobile app development.
Kotlin Multiplatform Mobile allows developers to save time by writing the business logic for their iOS and Android apps just once, in pure Kotlin. Kotlin compiles an embedded framework that is shared between iOS and Android apps. Developers can now write and reuse code that is shared across platforms.
In this course we create a GraphQL server and shared repository in pure Kotlin. The course code covers the Ktor GraphQL server, and client-side shared repository. The final chapter provides an overview of Jetpack Compose and SwiftUI.
What is KMM?
Kotlin Multiplatform, or KMM allows developers to create cross-platform mobile applications using shared business logic. Under the hood, Kotlin compiles a shared framework that is embedded with native iOS and Android applications.
KMM is designed to handle core business logic in Kotlin such as client-side networking, caching and persistence.
In short, KMM will handle any logic that does not involve displaying data. The benefit of this approach is that you can reuse code, save time, and still leverage the latest iOS and Android technologies.
Native performance and flexibility, along with code reusability.
Platform-specific code that *just works*.
No restrictions on your app's UI, so you can build with SwiftUI, Jetpack Compose, etc.
There is a learning curve if you have little to no experience with Kotlin.
Multiplatform projects are currently in alpha. Language features and tooling may change in future Kotlin versions.
In this course, we will be using two different IDEs:
Android Studio Preview (Arctic Fox).
In order to develop iOS applications, you will need a computer running Mac OS and Xcode 12+. Xcode is not required for this course. The code we write is pure Kotlin, and you have the option to write Swift for the final project.
Ready? Let's get started.
Who this course is for:
- Full stack developers looking to learn server-side Kotlin, Ktor and GraphQL
- Full stack developers looking to learn Multiplatform mobile app development
- Mobile developers interested in cross-platform app development with Kotlin
Michael is a Full Stack Software Engineer at CLEAR in New York City. Developing apps has become one of his creative avenues, with a focus on front-end design. When he’s not making apps and exploring the city, Michael enjoys going to concerts, reading, writing, playing guitar and piano.
As a self-taught developer, Michael is thrilled to be recording new digital content for Udemy's online community.