Kotlin
A concise multiplatform language developed by JetBrains
2025년 Kotlin Multiplatform 개발 로드맵
이제 Kotlin Multiplatform이 확고히 자리를 잡게 되면서 Shopify, Forbes, Haier와 Zürcher Kantonalbank와 같은 주요 기업을 포함한 전 세계의 개발 팀이 프로덕션 환경에서 Kotlin Multiplatform을 활용할 수 있게 되었습니다. 2024년 5월에 열린 Google I/O에서 Google은 Android와 iOS 간에 비즈니스 로직을 공유할 수 있도록 Kotlin Multiplatform을 공식 지원한다고 발표했습니다. 이 발표와 다른 주목할 만한 개선 덕분에 이 기술을 더욱 안정화하고 다듬을 수 있는 탄탄한 토대가 마련되었습니다.
JetBrains는 2025년에 Compose Multiplatform for iOS를 안정화 버전으로 업그레이드하고, 올인원 KMP IDE와 Kotlin에서 Swift로 내보내기 기능을 처음으로 공식 출시할 뿐만 아니라 핵심 기술, 도구 및 라이브러리를 크게 개선하는 등 Kotlin Multiplatform 에코 시스템을 강화하는 데 집중합니다. JetBrains의 내년 주요 우선 순위와 목표에 관해서 알아보려면 계속 읽어주세요.
또한, JetBrains의 진화하는 비전을 반영하기 위해 Kotlin 로드맵도 최근 업데이트하였으니, 확인해 보시고 JetBrains의 계획에 관한 인사이트를 얻어 보세요.
Compose Multiplatform
JetBrains는 지원되는 모든 플랫폼에서 디자인의 일관성이 유지되고, 아름답고 성능이 뛰어난 애플리케이션을 만들 수 있는 프레임워크인 Compose Multiplatform을 개발하기 위해 최선을 다하고 있습니다. 최우선 목표는 iOS 대상의 안정화 릴리스를 출시하는 것입니다. 이는 다른 타깃 플랫폼의 경험을 개선하는 데에도 도움이 됩니다.
현재 집중하고 있는 몇 가지 주요 영역은 다음과 같습니다.
- Jetpack Compose 기능 동일화. 모든 핵심 API와 구성 요소가 멀티플랫폼을 지원하도록 하기 위해 작업 중입니다. 작업이 많이 진척되었지만, 아직 안정화 릴리스를 내려면 해결해야 할 요소가 일부 남아 있습니다. 초점은 이 프로세스를 간소화하는 인프라 변경에 두고 있습니다.
- iOS 렌더링 성능. iOS의 렌더링 성능도 크게 개선되었습니다. 다음 단계는 벤치마크 인프라를 구현해 성능 저하를 포착하여 사용자가 프레임워크의 성능을 투명하게 파악할 수 있게 만드는 것입니다.
- 핵심 구성 요소의 기능 완성. 탐색, 리소스 관리, 접근성 및 국제화를 포함한 필수 기능의 완성을 최우선으로 진행하고 있습니다.
- Compose와 네이티브 뷰의 상호 운용성을 안정화하는 것도 주요 목표입니다.
- 프레임워크의 전반적인 안정화. JetBrains는 Compose Multiplatform 테스트 버전을 통해 프레임워크의 전반적인 안정성을 개선하고 사용자 경험을 개선하려고 합니다.
- 문서. 사용자가 Compose Multiplatform을 배우고 사용하는 데 필요한 모든 리소스를 한 곳에서 제공하려고 합니다.
또한, 웹에 제공되는 기능을 다른 플랫폼과 동등하게 만들기 위해 주력하고 있습니다. 여기에는 드래그앤드롭 지원, 텍스트 입력 및 렌더링 개선과 HTML 페이지 콘텐츠와의 상호 운용성 보장이 포함됩니다. 이미 Android Studio와 IntelliJ IDEA 코드 베이스에서 사용되고 있는 데스크톱용 Compose Multiplatform에 Jetpack Compose의 신규 API를 도입하며, 성능도 계속 개선하고 있습니다.
이러한 이니셔티브를 통해, Compose Multiplatform을 한 줄의 구성만으로 모든 플랫폼을 지원할 수 있는 최고의 애플리케이션 빌드 도구로 만들려고 합니다.
도구
Kotlin Multiplatform에서 탁월한 개발 경험을 제공하려는 노력은 계속됩니다. 목표는 여러 IDE를 전환해야 하는 상황을 줄여 전체 플랫폼 간에 원활하게 통합된 워크플로를 제공하는 것입니다.
IntelliJ IDEA나 Android Studio와 같이 Kotlin Multiplatform 개발에 일반적으로 사용되는 IDE와 KMP를 원활하게 통합하여 비즈니스 로직이나 UI를 더 간단히 공유할 수 있도록 하려고 합니다.
기존의 모든 플랫폼에 강력한 KMP 지원 제공을 계속 우선시하겠지만, 전용 IDE도 필요하다고 생각합니다. 그래서 독립실행형 KMP IDE를 공식 출시하기 위한 작업을 진행 중입니다. 이 IDE는 Kotlin Multiplatform 개발에 특화되어 있고, 모든 것을 갖춘 최적화된 환경을 제공할 예정입니다. 이 릴리스에서는 모바일 시나리오에 집중하고 있으며 목표는 다음과 같습니다.
- 개발자가 여러 IDE 간에 전환할 필요가 없도록 만들려고 합니다.
- 언어 지원을 강화하여 동등하게 탁월한 Kotlin과 Swift 경험을 제공하는 동시에, 두 언어의 원활한 상호 운용성을 구현하는 데 초점을 두고 있습니다.
- 개발자가 iOS와 Android 모두에서 자신 있게 생산적으로 작업할 수 있도록 간소화된 통합 워크플로를 만들어 일관성과 명확성을 제공하려고 합니다.
앞으로 개발 경험을 향상할 수 있는 새로운 영역이 있는지도 살펴보고 있습니다.
- Apple 기기를 사용할 수 없는 개발자를 위해 클라우드 시스템을 활용하여 iOS 플랫폼용 앱을 빌드하는 방법을 살펴보는 중입니다.
- AI 도구를 더 긴밀하게 통합하여 코드를 생성할 때뿐만 아니라 복잡한 개발 작업을 해결할 때에도 도움을 받아 전체적으로 효율성을 높일 수 있도록 하려고 합니다.
Kotlin에서 Swift로 내보내기
Kotlin에서 Swift로 직접 내보내기를 빠르게 개발하고 있습니다. 2024년에는 아키텍처의 기반을 마련하였으며 이제 더 많은 Kotlin 기능을 지원하기 위한 작업을 반복하고 있습니다. 현재 2025년 목표는 첫 번째 공개 버전을 출시하는 것입니다. 이 초기 릴리스에서는 Objective-C의 제약을 극복하면서 기존의 Objective-C 내보내기와 유사한 사용자 경험을 제공하는 것이 목표입니다. 이를 통해 Swift 언어 지원이 확장되고 더욱 원활한 API 내보내기가 가능해집니다. 또한 이를 기반으로 추후 Swift로 내보내기를 활용한 개선 사항이 나올 수 있습니다.
YouTrack에서 진행 상황을 알아보거나 공개 Slack 채널인 #swift-export에서 논의에 참여하실 수 있습니다.
라이브러리 에코시스템
Kotlin Multiplatform 에코시스템이 빠르게 확장됨에 따라 라이브러리의 역호환성이 중요해졌습니다. 이를 보장하려면 JetBrains 팀과 라이브러리 작성자가 서로 협력해야 합니다. 앞으로의 계획은 다음과 같습니다.
- 라이브러리 작성자가 JVM 라이브러리 빌드 지식을 활용할 수 있도록 klib 형식을 개선하려고 합니다.
- JVM과 마찬가지로 Kotlin Multiplatform 라이브러리에서 동일한 코드 인라인화 동작을 구현하려고 합니다.
- 멀티플랫폼 라이브러리 공개 API가 호환되는지 확인할 수 있는 도구를 제공하려고 합니다.
또한, Kotlin Multiplatform 라이브러리를 게시하는 프로세스도 개선하고 있으며, 여기에는 다음이 포함됩니다.
- KMP 라이브러리를 생성하고 게시하기 위한 템플릿과 포괄적인 가이드라인을 제공하려고 합니다.
- 여러 플랫폼에서 이루어지는 klib의 교차 컴파일링을 안정화하려고 합니다.
- 완전히 새롭게 디자인된 KMP 라이브러리 게시 프로세스를 출시하려고 합니다.
- 라이브러리 문서화 프로세스를 크게 개선하려고 합니다.
Kotlin Multiplatform은 안정화되었지만, 여전히 주요 업데이트가 계획되어 있습니다. 하지만 걱정하지 마세요. 현재 형식으로 빌드된 라이브러리는 최신 Kotlin 버전에서도 계속 작동합니다.
웹에서 멀티플랫폼 라이브러리 검색
웹에서 멀티플랫폼 라이브러리를 검색하는 과정을 간소화하는 작업을 현재 진행하고 있습니다. 라이브러리 에코시스템은 빠르게 성장하고 있으며, 현재 약 2,500개의 Kotlin Multiplatform 라이브러리가 제공되고 있습니다. 그러나 이런 광범위한 선택지에도 불구하고 특정 요구 사항에 맞으면서 선택된 플랫폼을 지원하는 라이브러리를 찾기가 어려울 때도 많습니다.
현재 목표는 이러한 라이브러리 검색 과정을 도와 개발자가 쉽게 사용해 볼 수 있도록 하는 솔루션을 도입하여 Kotlin Multiplatform 에코시스템의 전반적인 경험을 개선하는 것입니다. 이 이니셔티브에 관한 자세한 내용은 연중 내내 공유될 예정이니, 소식을 계속 확인해 주세요!
Amper
JetBrains의 실험적 프로젝트 구성 및 빌드 도구인 Amper는 얼리어답터들로부터 값진 버그 보고서, 방해 요소, 사용 사례 및 기능 요청과 더불어 긍정적인 피드백을 받았습니다. 개발 범위를 조정하고 제품을 개선하는 데 큰 도움이 되는 이러한 피드백에 감사드립니다.
2025년에는 Amper를 Android 및 iOS용 멀티플랫폼 모바일 앱 개발에 완전이 적합하도록 만들고 Compose Multiplatform과 공유되는 UI를 완성하는 데 집중할 것입니다. 이러한 작업에는 다음이 포함됩니다.
- 애플리케이션 실행 및 테스트(로컬, 물리적 기기, CI에서).
- Google Play와 App Store에서 애플리케이션을 서명하고 게시.
- 원활하고 쾌적한 경험을 제공하는 다수의 IDE 기능.
모바일 애플리케이션의 백엔드 및 공유 비즈니스 로직이 포함된 프로젝트 같은 서버 측 개발과 관련된 시나리오도 살펴볼 예정입니다.
Amper 블로그의 게시글을 팔로우하고, 최신 릴리스를 계속 확인하며, Kotlinlang Slack의 #amper 채널에서 토론에 참여해 보세요.
Gradle 및 기타 빌드 도구
2025년을 앞두고 Gradle 개선과 관련된 작업을 Kotlin 로드맵에 간략히 소개했습니다. 작업할 주요 영역은 다음과 같습니다.
- 프로젝트 수준에서 Kotlin Multiplatform 종속성을 선언할 수 있도록 지원하려고 합니다. 이를 통해 개발자는 프로젝트 종속성을 손쉽게 효율적으로 관리할 수 있습니다.
- Kotlin/네이티브 툴체인과 Gradle의 통합을 개선하려고 합니다.
- 멀티플랫폼 라이브러리의 차세대 배포 형식을 구현하려고 합니다. 이 이니셔티브는 종속성 모델과 멀티플랫폼 라이브러리의 게시 레이아웃을 간소화하여, 타사 빌드 도구와 편리하게 사용할 수 있도록 하고 라이브러리 제작자가 겪는 복잡성을 줄입니다.
- 선언형 Gradle에서 완벽한 Kotlin Multiplatform 지원을 제공하려고 합니다. 선언형 Gradle을 지원하는 실험적 Kotlin 에코시스템 플러그인을 만들어 개발자가 Gradle 빌드에서 선언형 방식을 시험해 볼 수 있도록 하려 합니다.
또한, Gradle 프로젝트 분리 지원, 공개적으로 사용할 수 있는 Kotlin Gradle 플러그인용 API 참조 및 기타 이니셔티브도 계속해서 작업 중입니다. JetBrains의 다른 프로젝트에 관해서는 자세한 Kotlin 로드맵 문서에서 읽어 보실 수 있습니다.
더 읽어볼 자료
게시물 원문 작성자