JetBrains에서 만든 크로스 플랫폼 기술
코드 하나로 여러 플랫폼을 개발할 수 있어서 개발이 빨라진다.
네이티브 코드의 이점을 동시에 갖는 것이 목적이라고 한다.
KMM(Kotlin Multiplatform Mobile)은 KMP(Kotlin MultiPlatform)에서 파생된 모바일에 특화된 플랫폼이다.
공식 홈페이지에서 알려주는 상태는 다음과 같다.
Best effort는 대부분의 시나리오에서는 안전하지만 이슈가 생길수도 있는 상태라고 한다.
가장 큰 관심사인 안드로이드와 iOS는 안정화 상태고 데스크탑과 서버도 안정화인 것을 보면 사용 중에 큰 이슈는 없을 것으로 보인다.
다만 UI의 경우는 조금 다른데 공식에서 알려주는 현황은 다음과 같다.
안드로이드는 Compose가 정식 버전이 나온지 꽤 되어서 문제가 없지만, iOS와 웹은 Compose로 작업하기에는 힘들 것으로 보인다.
예상 외로 데스크탑 버전은 안정화가 되었다.
가장 메이저한 사용법
안드로이드하고 iOS는 UI 개발 방식이 다른데 Compose Multiplatform을 사용하면 동시에 개발이 가능하다고 한다.
KMP를 사용해 윈도우, 맥OS, 리눅스 환경의 앱을 개발하는 것이 가능하다.
JetBrains에서 만든 Toolbox 앱도 KMP로 만들어졌다고 한다.
Ktor 프레임워크를 사용해 서버를 개발할 수 있다고 한다.
다음 개발 매커니즘을 따른다고 한다.
앱 개발을 하다 보면 서버나 웹도 같이 하면 좋다고 생각했는데 KMP를 사용하면 가능할 것 같다.
웹의 UI를 Compose로 아직 못 만드는 것은 아쉽다.