Mobile

알파 출시 이후 KMM의 새로운 기능

크로스 플랫폼 모바일 개발을 위한 SDK인 Kotlin Multiplatform Mobile(KMM)은 2020년 8월에 알파로 출시되었습니다. 지난 9 개월 동안 KMM 생태계는 빠르게 발전했습니다.

  • 각각의 새로운 Kotlin 버전에는 멀티플랫폼 개발 경험을 향상시키는 기능과 개선 사항이 함께 제공됩니다.
  • Android Studio용 KMM 플러그인과 같은 KMM 개발 도구는 크로스 플랫폼 모바일 애플리케이션 제작 과정을 보다 효율적이고 즐겁게 만들어주는 업데이트가 지속적으로 이루어지고 있습니다.
  • 커뮤니티는 유용한 라이브러리를 제작하고, 유익한 샘플 프로젝트를 만들며, 프로덕션에서 KMM을 사용한 경험을 공유하면서 생태계에 적극적으로 기여하고 있습니다.

중요한 업데이트를 놓치지 않도록 계속해서 알파 출시 이후 생태계의 주요 하이라이트에 대한 개요를 읽어보세요. 또는 한시라도 빨리 직접 체험해보고 싶다면 KMM 문서 포털을 방문하여 자세히 알아보고 사용해 보세요!

KMM 시작하기


이 블로그 글에서는 다음 내용의 개요를 확인할 수 있습니다.

KMM 플러그인의 새로운 기능이란?

Android Studio용 KMM 플러그인을 사용하면 교차 플랫폼 애플리케이션을 개발할 수 있습니다. 몇 번의 클릭만으로 새로운 크로스 플랫폼 모바일 앱을 만들 수 있으며 iOS 개발 생태계와 긴밀하게 통합됩니다.

iOS와 안정적이고 사용자 정의 가능한 통합

KMM 플러그인을 사용하면 Android Studio에서 직접 iOS를 대상으로 하는 애플리케이션의 iOS 부분을 실행, 테스트 및 디버그할 수 있습니다. 플러그인의 첫 릴리스 이후 iOS 통합이 훨씬 더 안정적이고 구성 가능해졌으며 이제 최신 iOS 도구를 지원합니다. 구현된 iOS 통합 개선의 전체 목록을 참조하세요.

유연한 프로젝트 마법사

KMM 플러그인은 KMM으로 첫 걸음을 내딛는 데 필수적인 도구이기도 합니다. 플러그인의 편리한 마법사를 사용하여 새 멀티플랫폼 프로젝트를 빠르게 만들거나 기존 프로젝트에 멀티플랫폼 모듈을 추가할 수 있습니다.

최신 플러그인 버전은 새로운 KMM 프로젝트 및 모듈에 Cocoapods 통합을 사용할 수 있는 기능을 제공합니다. 추가적인 KMM 모듈 설명을 제공하기만 하면 플러그인이 필요한 모든 구성 코드를 생성합니다.

KMM 플러그인의 새로운 기능 및 개선 사항에 대한 전체 목록과 설치 지침 및 호환성 정보를 보려면 KMM 플러그인 릴리스 페이지를 방문하세요.

KMM용 Kotlin의 새로운 기능은?

KMM은 Kotlin의 멀티플랫폼 기능을 기반으로 하며 Kotlin/JVM 및 Kotlin/Native를 사용하여 Android용 .jar 및 iOS용 .framework와 같은 플랫폼 아티팩트를 생성합니다. 모든 Kotlin 업데이트는 KMM으로 크로스 플랫폼 모바일 앱을 빌드하는 개발자 환경을 개선합니다.

Kotlin/Native 개선 사항을 포함한 향상된 iOS 통합

Kotlin/Native 팀은 KMM 커뮤니티에서 가장 학수고대하던 기능인 Kotlin Native의 새로운 메모리 관리 접근 방식에 많은 중점을 두고 있습니다. 2021년 여름 말까지 새로운 메모리 관리 디자인의 개발 테스트 버전을 발표할 계획입니다. Kotlin/Native 메모리 관리 업데이트 블로그 게시물에서 이 프로젝트의 자세한 현황을 읽어보세요.

새로운 메모리 관리 접근 방식을 구현하는 데 상당한 진전이 있었지만 Kotlin/Native를 사용한 iOS 개발의 다른 기능에도 관심을 기울였습니다.

멀티플랫폼 프로젝트를 위한 안정적인 도구

모든 종류의 프로젝트에서 즐겁게 작업하려면 도구가 안정적이어야 합니다. KMM의 알파가 출시되고 여러 새로운 멀티플랫폼 기능이 도입된 후, Kotlin 멀티플랫폼 팀은 멀티플랫폼 프로젝트의 프런트엔드 및 IDE 가져오기 안정성을 개선하는 데 노력을 집중했습니다. 멀티플랫폼 프로젝트로 작업하는 동안 IDE에서 “레드 코드”로 이어지는 많은 문제를 수정했습니다. 앞으로도 계속 멀티플랫폼 개발자 경험을 개선할 것이며 이를 위해서는 여러분의 피드백이 필요합니다. 잠시 시간을 내어 발견한 모든 이슈를 이슈 트래커인 YouTrack에 보고해 주세요.

물론 소개한 내용은 주요 하이라이트일뿐입니다. Kotlin이 멀티플랫폼 모바일 애플리케이션 개발을 위해 제공하는 모든 새로운 기능에 대한 요약 정보를 보려면 KMM 문서 포털에서 KMM용 Kotlin의 새로운 기능을 참조하세요. 이 페이지는 새로운 Kotlin 버전이 나올 때마다 업데이트되므로 중요한 소식을 놓치지 않고 확인할 수 있습니다!

커뮤니티에서 새롭게 달라진 점은?

커뮤니티는 모든 기술 생태계의 핵심입니다. 여러분은 가장 큰 영감과 피드백의 원천입니다! 첫 릴리스 이후 전 세계 개발자들은 프로덕션 프로젝트에서 KMM을 사용한 경험을 공유하고 유용한 라이브러리 및 샘플 프로젝트를 생성하여 KMM 생태계의 발전을 지원하고 있습니다.

더욱 확대되는 KMM 라이브러리

KMM 라이브러리의 수가 지속적으로 증가하고 있으므로 프로젝트 요구 사항에 가장 적합한 라이브러리를 선택할 수 있습니다.

KMM 개발자들은 아직도 더 많은 요구가 해결되기를 기다리고 있으며, 이는 라이브러리 작성자에게 많은 기회가 있음을 의미합니다. 멀티플랫폼 라이브러리를 빌드 및 게시하는 방법을 알아보고 빠르게 성장하는 이 생태계에 참여해보세요!

새로운 샘플 프로젝트

샘플 프로젝트는 기술에 대한 첫 실무 경험을 얻는 데 매우 유용할 수 있습니다. 커뮤니티가 지금껏 기울여준 훌륭한 노력 덕분에 코드 공유 시나리오를 기반으로 샘플 프로젝트를 선택하거나 모두 시도해볼 수 있습니다.

  • D-KMP 샘플은 ViewModel(탐색 레이어 포함)을 KMM과 완전히 공유하는 방법을 보여주고, MVI 및 CQRS 패턴을 구현하며, 최신 선언적 UI 툴킷인 Compose for Android 및 SwiftUI for iOS를 사용합니다.
  • multiplatform-redux-sample은 KMM 및 ReduxKotlin을 사용하여 크로스 플랫폼 애플리케이션을 빌드하는 방법을 보여줍니다.
  • 잘 알려진 people-in-space 프로젝트는 Kotlin 멀티플랫폼 기술의 강력한 성능을 보여주는 훌륭한 데모입니다. 모든 비즈니스 로직을 공유하고 최신 모바일 UI 툴킷을 사용하는 외에도 Compose Desktop을 사용하므로 PC에서 이 샘플 애플리케이션을 실행할 수 있습니다!

최근 Kotlin 멀티플랫폼 사용자 설문조사에 따르면 더 복잡한 샘플이 커뮤니티에서 더 많이 요청되는 것으로 나타났으며, 이에 따라 KMM 팀에서 공식 KMM 프로덕션 샘플을 도입했습니다. 이것은 App StoreGoogle Play에서 다운로드할 수 있는 간단한 RSS 리더입니다. 실제 프로덕션 프로젝트에서 KMM을 사용할 수 있는 방법을 보여주기 위해 설계된 이 프로그램은 아키텍처에 대한 설명과 함께 포괄적인 readme를 제공하므로 해당 프로젝트에 이 접근 방식을 적용할 수 있습니다.

KMM의 이점을 누리는 팀의 새로운 이야기

KMM을 사용하여 모바일 플랫폼 사이에서 코드를 공유하는 것은 전 세계의 기업과 개인 개발자 사이에서 보편화되고 있습니다.

  • Netflix는 Kotlin Multiplatform Mobile로 전환하여 신뢰성을 높이도록 스튜디오 앱을 최적화하고 서비스 속도를 높였습니다.
  • Philips는 KMM을 사용하여 새로운 기능을 더 빠르게 구현하고 있습니다. 또한 팀에서 Android와 iOS 개발자 간에 상호 작용이 더욱 활발해졌습니다.
  • Down Dog는 KMM을 통해 모든 플랫폼에서 동시에 기능을 출시하고 개발 속도를 높이며 버그를 줄이고 있습니다. 팀은 더 나아가 iOS 플랫폼 코드의 대부분을 Swift에서 Kotlin으로 옮겼습니다. 5개의 Swift 파일만 제외하고 이제 전체 프로젝트가 Kotlin으로 작성되어 있습니다.

KMM 포털의 사례 연구 섹션에서 모든 분야의 기업과 개인 개발자의 영감을 주는 스토리를 읽어보세요.

KMM 포털에서 새로워진 점은?

KMM으로 작업할 때 일상적인 도우미로 사용될 문서 포털도 계속해서 개발하고 있습니다.

  • 새로운 FAQ 페이지는 KMM 여정을 시작하기에 좋은 출발점입니다. 여기에는 Windows에서 KMM을 사용하는 방법과 같이 가장 자주 묻는 질문에 대한 답변이 포함되어 있습니다. 관련된 답변을 찾을 수 없는 질문이 있을 때는 저희에게 알려주세요!
  • 새로운 단계별 가이드에 따라 기존 Android 애플리케이션을 크로스 플랫폼으로 만들어 Android 및 iOS 모두에서 작동하도록 해보세요. 아직 새 프로젝트를 시작하기 전이라도 크로스 플랫폼 접근 방식의 이점을 체험해 보세요!

문서를 읽는 것이 KMM에 익숙해지는 유일한 방법은 아닙니다. Kotlin YouTube 채널에서 새롭게 제공하는 “Kotlin Multiplatform Multiverse” 동영상 시리즈는 새로운 프로젝트를 만들고 네트워킹에 Ktor를 사용하는 등의 기초적 주제를 다루므로 편안하게 KMM에 대한 지식을 넓힐 수 있습니다.

다음 단계는?

치열했던 9개월이었습니다! 그러나 Kotlin 팀이 KMM에 역점을 두고 있는 만큼 아직 기대할 부분이 많이 남아 있습니다.

이제 모두가 고대하는 중요한 이정표는 KMM을 베타로 전환하는 것입니다. 이에 대한 세부 계획을 세우고 있으며 베타 발표 전에 완료될 KMM 관련 작업에 대한 별도의 블로그 게시물을 올릴 예정입니다. Kotlin Multiplatform 도구에서 Apple Silicon 대상 지원새로운 가비지 컬렉터 프로토타입 생성을 포함한 대부분의 작업이 진행 중에 있습니다. 현재 우선 순위를 두고 있는 작업에 대한 자세한 내용은 Kotlin 로드맵을 참조하세요.

커뮤니티가 성장하고 KMM이 전 세계적으로 점점 더 많은 회사에서 채택되는 모습을 보면서 저희는 보람을 느낍니다. 오늘 바로 모바일 크로스 플랫폼의 여정을 시작해 보세요!

KMM 시작하기

추가 리소스 읽기 및 시청하기

YouTube에서 Kotlin 시청하기:

Kotlin 블로그 읽기:

Kotlin 및 KMM 문서에서 자세히 알아보기:

이 게시물은 Ekaterina Petrova가 작성한 What’s new in KMM since going Alpha를 번역한 글입니다.

Discover more

Mobile

Что изменилось в KMM после выхода альфа-версии

Альфа-версия Kotlin Multiplatform Mobile (KMM), SDK для кросс-платформенной мобильной разработки, вышла в августе 2020 года. С тех пор прошло 9 месяцев, в течение которых экосистема KMM стремительно развивалась:

  • В каждой версии Kotlin появляются новые функции и улучшения, которые позволяют оптимизировать процесс создания мультиплатформенных приложений.
  • Инструменты разработки KMM, такие как плагин KMM для Android Studio, постоянно обновляются, благодаря чему создавать кросс-платформенные мобильные приложения стало проще и приятнее.
  • Участники нашего сообщества активно развивают экосистему, создавая полезные библиотеки и наглядные образцы проектов, а также делятся своим опытом практического использования KMM в разработке.

Ниже — обзор основных изменений экосистемы с момента выхода альфа-версии, в котором перечислены все важнейшие обновления. Если захотите узнать больше и попрактиковаться, зайдите на портал с документацией KMM, чтобы узнать, как создать свое первое приложение.

Знакомство с KMM


Ниже мы рассмотрим:

Что нового в плагине KMM?

Плагин KMM для Android Studio помогает разрабатывать кросс-платформенные приложения. Он интегрируется с экосистемой разработки под iOS и позволяет создавать новые кросс-платформенные мобильные приложения всего за пару кликов.

Стабильная и настраиваемая интеграция с iOS

Плагин KMM позволяет запускать, тестировать и отлаживать код для iOS на целевых платформах под iOS прямо из Android Studio. С момента первого релиза этого плагина его интеграция с iOS стала более стабильной и гибкой. Теперь она поддерживает новейшие технологии iOS. Ознакомьтесь с полным списком реализованных улучшений интеграции с iOS.

Удобные мастера проектов

Плагин KMM — это еще и важный инструмент для ознакомления с KMM. В нем есть удобные мастера, которые помогут быстро создать новый мультиплатформенный проект или добавить мультиплатформенный модуль в уже существующий проект.

Последняя версия плагина дает возможность использовать интеграцию с CocoaPods для новых проектов и модулей KMM. Нужно лишь добавить описание модуля KMM — и плагин сгенерирует весь необходимый код конфигурации.

Полный перечень новых функций и улучшений в плагине KMM, а также инструкции по установке и информацию о совместимости можно найти на странице релизов плагина KMM.

Что нового в Kotlin для KMM?

KMM основан на мультиплатформенных возможностях Kotlin и использует Kotlin/JVM и Kotlin/Native для создания артефактов платформы: .jar для Android и .framework для iOS. С каждым обновлением Kotlin процесс разработки кросс-платформенных мобильных приложений с KMM становится еще удобнее.

Улучшенная интеграция с iOS и повышение производительности Kotlin/Native

Команда Kotlin/Native всецело сосредоточена на реализации функциональности, которую так долго ждали в сообществе KMM. Речь о новом подходе к управлению памятью для Kotlin Native. Мы планируем представить первую версию нового дизайна системы управления памятью к концу 2021 года. Следите за подробностями и состоянием этого проекта в блоге Kotlin/Native Memory Management Update.

Мы не только значительно продвинулись в реализации нового подхода к управлению памятью, но и уделили внимание другим аспектам разработки под iOS с Kotlin/Native:

Стабильный инструментарий для мультиплатформенных проектов

Чтобы работа над тем или иным проектом приносила удовольствие, инструменты должны быть стабильными. После перехода KMM на альфа-тестирование и введения целого ряда мультиплатформенных функций команда Kotlin Multiplatform занялась улучшением фронтенда и повышением стабильности импорта IDE для мультиплатформенных проектов. Было исправлено множество проблем, которые приводили к ошибкам в IDE при работе с мультиплатформенными проектами. Мы продолжаем работать над оптимизацией процесса мультиплатформенной разработки — вот почему нам так важно получить ваши отзывы. Если у вас найдется свободная минутка, сообщите о найденных проблемах в нашем баг-трекере YouTrack.

Разумеется, это всего лишь обзор. Подробнее обо всех нововведениях в Kotlin для разработки мультиплатформенных мобильных приложений читайте на портале с документацией в статье What’s new in Kotlin for KMM. Эта страница обновляется при выходе каждой новой версии Kotlin, так что вы точно не пропустите ничего важного.

Что нового в сообществе?

Сообщество — это сердце любой экосистемы разработки технологий. Вы — наш важнейший источник вдохновения, и от вас мы узнаем много полезного! С момента первого релиза разработчики со всего мира поддерживают развитие экосистемы KMM, делясь опытом использования KMM в своих рабочих проектах и создавая полезные библиотеки и демонстрационные проекты.

Еще больше библиотек KMM

Количество библиотек KMM постоянно растет, а это значит, что вы всегда сможете выбрать то, что лучше всего подходит для решения ваших задач:

У KMM-разработчиков намного больше насущных потребностей, что открывает перед создателями библиотек новые горизонты. Узнайте, как собрать и опубликовать мультиплатформенную библиотеку, и присоединяйтесь к этой стремительно растущей экосистеме!

Новые демо-проекты

Новую технологию зачастую удобнее изучать на примерах. Благодаря замечательным мастерам нашего сообщества можно выбрать демонстрационный проект, соответствующий вашим сценариям кросс-платформенного использования кода, или попробовать их все:

  • D-KMP демонстрирует, как в полной мере совместно использовать ViewModel (в том числе слой навигации) с помощью KMM, реализует паттерн MVI и CQRS, а также работает с новейшими наборами инструментов декларативного интерфейса: Compose для Android и SwiftUI для iOS.
  • Проект multiplatform-redux-sample показывает, как выполнить сборку кросс-платформенного приложения с KMM и ReduxKotlin.
  • Популярный проект people-in-space прекрасно демонстрирует всю мощь технологии Kotlin Multiplatform. Помимо совместного использования всей бизнес-логики и современных наборов инструментов для мобильного интерфейса, он работает с Compose Desktop, так что вы можете запускать этот проект на своем ПК.

По результатам последнего опроса пользователей Kotlin Multiplatform участники сообщества с нетерпением ждут появления более сложных демонстрационных проектов, поэтому мы представили официальный демо-проект от команды KMM. Это простой RSS-агрегатор, который можно скачать с App Store и Google Play. Его назначение — продемонстрировать, как можно использовать KMM в реальных production-проектах. Этот образец сопровождается подробным Readme, в котором объясняется архитектура, чтобы его можно было использовать для своих проектов.

Кто еще пользуется преимуществами KMM?

Использование общего кода в мобильных платформах с помощью KMM становится обычной практикой как в компаниях, так и среди отдельных разработчиков во всем мире:

  • Netflix перешел на Kotlin Multiplatform Mobile, чтобы оптимизировать свое студийное приложение и повысить его скорость работы.
  • Philips использует KMM, чтобы ускорить внедрение новых функций. Кроме того, в команде этой компании улучшилось взаимодействие между разработчиками Android- и iOS-приложений.
  • KMM помогает Down Dog запускать контент одновременно на всех платформах, способствует стремительному развитию этого стартапа и уменьшает количество ошибок. Более того, команда Down Dog перенесла большую часть кода под iOS с Swift на Kotlin, и теперь на Kotlin реализован почти весь проект, за исключением всего пяти Swift-файлов.

На портале KMM в разделе Case Studies вы найдете и другие вдохновляющие истории из практики от компаний любого калибра и отдельных разработчиков.

Что нового на портале KMM?

Мы продолжаем развивать портал с документацией, который ежедневно помогает вам в работе с KMM:

  • Новая страница вопросов и ответов — это неплохая отправная точка в вашем путешествии по KMM. Там есть ответы на большинство часто задаваемых вопросов, в том числе и о том, как работать с KMM на Windows. А если не найдете ответа на свой вопрос, просто дайте нам знать!
  • С помощью новой пошаговой инструкции вы сможете сделать свое Android-приложение кросс-платформенным, и оно будет работать как на Android, так и на iOS. Не надо ждать начала нового проекта — наслаждайтесь преимуществами кросс-платформенного подхода!

Чтение документации — это не единственный способ освоения KMM. В новой серии видеороликов «Мультивселенная Kotlin Multiplatform» на нашем YouTube-канале есть материалы для начинающих о том, как создать новый проект и использовать Ktor для работы с сетью, так что вы сможете с головой окунуться в KMM, не вставая с дивана.

Что мы планируем дальше?

Позади девять месяцев напряженной работы! Однако мы не собираемся сбавлять обороты, поскольку KMM остается одним из ключевых приоритетов для команды Kotlin.

Впереди важнейший и долгожданный этап: переход KMM в статус Бета Мы разрабатываем подробный план дальнейших действий и скоро опубликуем отдельную статью о том, какие задачи, связанные с KMM, будут выполнены до выхода бета-версии. Большинство из них, в том числе поддержка целевой платформы для Apple Silicon в инструментарии Kotlin Multiplatform и прототип нового сборщика мусора, уже в разработке. Чтобы узнать подробности и наши приоритеты, смотрите план развития Kotlin.

Мы очень рады, что наше сообщество растет и что все больше компаний по всему миру переходят на KMM. Отправляйтесь с нами в мобильное кросс-платформенное путешествие!

Знакомство с KMM

Что еще посмотреть и почитать

Смотрите канал «Котлин» на YouTube:

Блог Kotlin:

Узнайте больше из документации о Kotlin и KMM:

Ваша команда Kotlin
The Drive to Develop

Discover more

Mobile

Neuerungen in KMM seit dem Alpha-Meilenstein

Kotlin Multiplatform Mobile (KMM), ein SDK für die plattformübergreifende mobile Entwicklung, erreichte im August 2020 den Alpha-Status. In den vergangenen 9 Monaten hat sich das KMM-Ökosystem rasant weiterentwickelt:

  • Jede neue Kotlin-Version bringt Funktionen und Optimierungen mit, die das Multiplattform-Entwicklungserlebnis weiter verbessern.
  • KMM-Entwicklungstools wie das KMM-Plugin für Android Studio werden regelmäßig aktualisiert, um die Erstellung plattformübergreifender mobiler Anwendungen effizienter und angenehmer zu machen.
  • Die Community leistet einen aktiven Beitrag zum Ökosystem, indem sie nützliche Bibliotheken entwickelt, lehrreiche Beispielprojekte erstellt und ihre Erfahrungen mit dem Produktiveinsatz von KMM für die Allgemeinheit bereitstellt.

Lesen Sie weiter, um einen Überblick über die wichtigsten Neuerungen im Ökosystem seit dem Übergang in den Alpha-Status zu erhalten, damit Sie keine wichtigen Updates verpassen. Wenn Sie ohne Umschweife praktische Erfahrungen sammeln möchten, besuchen Sie das KMM-Dokumentationsportal, um mehr zu erfahren und KMM auszuprobieren!

Erste Schritte mit KMM


In diesem Blogbeitrag finden Sie einen Überblick über folgende Themen:

Das ist neu im KMM-Plugin

Das KMM-Plugin für Android Studio unterstützt Sie bei der Entwicklung plattformübergreifender Anwendungen. Das Plugin ist eng in das iOS-Entwicklungsökosystem integriert und ermöglicht die Erstellung plattformübergreifender Mobil-Apps mit nur wenigen Klicks.

Stabile und anpassungsfähige iOS-Integration

Mit dem KMM-Plugin können Sie den iOS-Teil Ihrer Anwendung direkt in Android Studio auf iOS-Zielgeräten ausführen, testen und debuggen. Seit dem ersten Release des Plugins ist die iOS-Integration wesentlich stabiler und konfigurierbarer geworden und unterstützt jetzt die neuesten iOS-Tools. Die vollständige Liste der Verbesserungen im Bereich iOS-Integration finden Sie hier.

Flexible Projektassistenten

Das KMM-Plugin ist auch eine wichtige Hilfe für Ihre ersten Schritte mit KMM. Das Plugin bietet praktische Assistenten, mit denen Sie schnell und unkompliziert ein neues Multiplattform-Projekt erstellen oder ein vorhandenes Projekt um ein Multiplattform-Modul ergänzen können.

Die neueste Plugin-Version bietet die Möglichkeit, die Cocoapods-Integration für neue KMM-Projekte und -Module zu verwenden. Sie müssen lediglich eine KMM-Modulbeschreibung bereitstellen, und das Plugin generiert den gesamten benötigten Konfigurationscode.

Eine vollständige Liste der neuen Funktionen und Verbesserungen sowie Installationsanweisungen und Kompatibilitätsinformationen finden Sie auf der Release-Seite des KMM-Plugins.

Neuerungen in Kotlin für KMM

KMM nutzt die Multiplattform-Fähigkeiten von Kotlin und verwendet Kotlin/JVM sowie Kotlin/Native zur Erstellung der Plattformartefakte – .jar für Android und .framework für iOS. Jedes Kotlin-Update verbessert daher die Entwicklungserfahrung beim Erstellen plattformübergreifender Mobil-Apps mit KMM.

Bessere iOS-Integration dank Kotlin/Native-Verbesserungen

Das Kotlin/Native-Team konzentriert sich stark auf das Feature, das in der KMM-Community am sehnlichsten erwartet wird: die neue Speicherverwaltung für Kotlin Native. Wir wollen die Entwicklungsvorschau des neuen Speicherverwaltungsdesigns bis Ende Sommer 2021 vorstellen. Details zum Status dieses Projekts finden Sie im Blogartikel Update der Kotlin/Native-Speicherverwaltung.

Neben den erheblichen Fortschritten bei der Implementierung des neuen Speicherverwaltungsansatzes haben wir auch die anderen Features für die iOS-Entwicklung mit Kotlin/Native nicht vernachlässigt:

  • Kotlin/Native wurde mit einem Prototyp des neuen Escape-Analysemechanismus ausgestattet, der die iOS-Laufzeitperformance um 10% verbessert.
  • Kotlin/Native kann jetzt Ausnahmen abfangen, die zur Laufzeit im Objective-C-Code ausgelöst werden, um Programmabstürze zu vermeiden. Auf diese Weise erhalten Sie Informationen zur Ursache des Problems und können die Ausnahme entsprechend behandeln. Erfahren Sie mehr über das erforderliche Opt-in.
  • Die Performance des Kotlin/Native-Compilers wurde durch verschiedene Updates verbessert. So wurde die Rebuild-Dauer des iOS-Frameworks im KMM-Beispielprojekt Netzwerk und Datenspeicherung von 9,5 Sekunden auf 4,5 Sekunden verringert. Erfahren Sie, wie auch Sie in Ihrem Projekt den Kotlin/Native-Kompilierungsprozess beschleunigen können.
  • Die CocoaPods-Integration erhielt eine Reihe von Verbesserungen – ein Rebuild der Abhängigkeiten findet zum Beispiel nur noch bei Bedarf statt, und es können mehr Bibliothekstypen als Abhängigkeiten verwendet werden.

Stabile Tools für Ihre Multiplattform-Projekte

Damit die Arbeit an einem Projekt Spaß macht, sind stabile Tools unerlässlich. Nachdem KMM den Alpha-Status erreicht hat und eine Reihe neuer Multiplattform-Features eingeführt wurden, konzentrierte sich das Kotlin-Multiplatform-Team auf die Verbesserung der Stabilität im Frontend und beim IDE-Import. Wir haben zahlreiche Probleme behoben, die bei der Arbeit mit plattformübergreifenden Projekten zu „rotem Code“ in der IDE geführt haben. Wir wollen die Entwicklungserfahrung bei Multiplattform-Projekten weiter verbessern, und dazu benötigen wir Ihr Feedback. Wenn Sie ein paar Minuten Zeit haben, melden Sie bitte alle Probleme, die Ihnen auffallen, in unserem Issue-Tracker YouTrack.

Dies waren natürlich nur die wichtigsten Highlights. Eine umfassende Aufstellung aller neuen Features, die Kotlin für die Entwicklung plattformübergreifender Mobil-Apps bietet, finden Sie im KMM-Dokumentationsportal unter Das ist neu in Kotlin für KMM. Die Seite wird mit jeder neuen Kotlin-Version aktualisiert, damit Sie keine wichtigen Neuerungen verpassen!

Neuigkeiten in der Community

Die Community ist das Herz jedes Technologie-Ökosystems. Sie sind für uns eindeutig die wichtigste Quelle für Inspiration und Feedback! Seit dem ersten Release unterstützen Community-Mitwirkende weltweit die Weiterentwicklung des KMM-Ökosystems, indem sie ihre Erfahrungen bei der Verwendung von KMM in ihren Produktionsprojekten teilen und nützliche Bibliotheken und Beispielprojekte erstellen.

Wachsende Anzahl von KMM-Bibliotheken

Die Anzahl der KMM-Bibliotheken nimmt ständig zu, sodass Sie die Bibliotheken auswählen können, die Ihren Projektanforderungen am besten entsprechen:

Bei der KMM-Entwicklung sind noch viele Bedürfnisse offen, sodass sich Bibliotheksautor*innen zahlreiche Möglichkeiten bieten. Lernen Sie, eine Multiplattform-Bibliothek zu erstellen und zu veröffentlichen, und schließen Sie sich diesem schnell wachsenden Ökosystem an!

Neue Beispielprojekte

Für die ersten praktische Erfahrungen mit einer Technologie können Beispielprojekte sehr hilfreich sein. Dank der großartigen Community-Beiträge können Sie je nach Ihrem Code-Sharing-Szenario aus zahlreichen Beispielprojekten wählen:

  • Das D-KMP-Beispiel zeigt, wie das ViewModel (einschließlich der Navigationsebene) mit KMM vollständig als gemeinsamer Code angelegt werden kann. Das Projekt implementiert das MVI- und CQRS-Pattern und verwendet die neuesten deklarativen UI-Toolkits: Compose für Android und SwiftUI für iOS.
  • Das Multiplattform-Redux-Beispiel zeigt, wie Sie eine plattformübergreifende Anwendung mit KMM und ReduxKotlin aufbauen können.
  • Das berühmte PeopleInSpace-Projekt ist eine großartige Demonstration der Leistungsfähigkeit der Kotlin-Multiplattform-Technologie. Eine Besonderheit neben der gemeinsamen Nutzung der gesamten Anwendungslogik und der Verwendung moderner Toolkits für die mobile Benutzeroberfläche ist der Einsatz von Compose Desktop, sodass Sie diese Beispielanwendung sogar auf Ihrem PC ausführen können!

Die neueste Benutzerumfrage zu Kotlin Multiplatform hat uns gezeigt, dass komplexere Beispiele der häufigste Wunsch der Community waren. Deshalb hat das KMM-Team ein offizielles KMM-Produktionsbeispiel vorgestellt. Es handelt sich um einen einfachen RSS-Reader, den Sie aus dem App Store und von Google Play herunterladen können. Das Projekt demonstriert den Einsatz von KMM in einem realen Produktionsszenario. Die verwendete Architektur wird in einer umfassenden Readme-Datei erklärt, damit Sie diese Ansätze in Ihren Projekten anwenden können.

Neue Berichte von Teams, die von KMM profitieren

Immer mehr Unternehmen und Einzelentwickler*innen nutzen KMM zur gemeinsamen Verwendung von Code auf verschiedenen Mobilplattformen:

  • Netflix wechselte zu Kotlin Multiplatform Mobile, um die Zuverlässigkeit der Studio-App zu optimieren und die Bereitstellung zu beschleunigen.
  • Philips verwendet KMM, um neue Features schneller implementieren zu können. Gleichzeitig hat auch die Interaktion zwischen der Android- und der iOS-Entwicklungsgruppe im Team des Unternehmens zugenommen.
  • Down Dog nutzt KMM, um Features gleichzeitig auf allen Plattformen einzuführen, die Entwicklungsgeschwindigkeit zu steigern und die Fehlerhäufigkeit zu reduzieren. Das Team hat sogar den Großteil des Codes für die iOS-Plattform von Swift auf Kotlin umgestellt. Mit der Ausnahme von nur fünf Swift-Dateien ist jetzt das gesamte Projekt in Kotlin geschrieben.

Auf dem KMM-Portal finden Sie weitere Fallstudien mit inspirierenden Berichten von Unternehmen aller Größen sowie von einzelnen Entwickler*innen.

Neuigkeiten im KMM-Portal

Wir entwickeln das Dokumentationsportal kontinuierlich weiter, um Sie im Arbeitsalltag mit KMM zu unterstützen:

  • Die neue FAQ-Seite ist ein guter Ausgangspunkt für den Einstieg in KMM. Dort finden Sie Antworten auf häufig gestellte Fragen – zum Beispiel wie Sie unter Windows mit KMM arbeiten können. Wenn Sie auf Ihre Frage keine Antwort finden, schreiben Sie uns bitte!
  • Die neue Schritt-für-Schritt-Anleitung hilft Ihnen, eine vorhandene Android-Anwendung plattformübergreifend zu gestalten, um sie sowohl auf Android als auch auf iOS verwenden zu können. Sie müssen nicht Ihr nächstes neues Projekt abwarten, um die Vorteile der plattformübergreifenden Entwicklung zu nutzen!

Das Lesen der Dokumentation ist nicht die einzige Möglichkeit, sich mit KMM vertraut zu machen. Die neue Videoreihe „Kotlin Multiplatform Multiverse“ auf dem YouTube-Kanal von Kotlin behandelt Themen wie das Erstellen eines neuen Projekts und die Verwendung von Ktor für die Netzwerkkommunikation, sodass Sie bequem von Ihrer Couch aus in KMM einsteigen können.

Wie geht es weiter?

Das waren intensive neun Monate! Doch das Beste kommt erst noch, denn KMM bleibt weiterhin eine Hauptpriorität des Kotlin-Teams.

Der nächste mit Spannung erwartete Meilenstein ist die Beförderung von KMM in den Beta-Status. Wir arbeiten an einem detaillierten Plan dafür und werden Sie in einem separaten Blogartikel darüber informieren, welche KMM-bezogenen Aufgaben vor der Beta-Ankündigung abgeschlossen werden müssen. Die meisten von ihnen – darunter die Unterstützung von Apple-Silicon-Zielgeräten in den Kotlin-Multiplattform-Tools und der Prototyp eines neuen Garbage Collectors – sind bereits in Arbeit. In der Kotlin-Roadmap finden Sie weitere Informationen zu unseren aktuellen Prioritäten.

Wir freuen uns sehr, dass die Community größer wird und KMM von immer mehr Unternehmen auf der ganzen Welt eingesetzt wird. Profitieren auch Sie noch heute von der plattformübergreifenden Mobilentwicklung mit KMM!

Erste Schritte mit KMM

Weitere Informationen zum Lesen und Ansehen

Kotlin-Videos auf YouTube:

Artikel im Kotlin-Blog:

Detaillierte Informationen in den Kotlin- und KMM-Docs:

Discover more