Spec-Zone.ru › Kotlin 1.7

Kotlin Многоплатформенность

Многоплатформенные проекты находятся на стадии альфа-версии. Функции языка и инструменты могут изменяться в будущих версиях Kotlin.

Поддержка многоплатформенного программирования является одним из ключевых преимуществ Kotlin. Она сокращает время, затрачиваемое на написание и сопровождение одинакового кода для разных платформ, сохраняя при этом гибкость и преимущества нативного программирования.

Сценарии использования Kotlin Многоплатформенности

Приложения для Android и iOS

Одним из основных сценариев использования Kotlin Многоплатформенности является совместное использование кода между мобильными платформами. С помощью Kotlin Multiplatform Mobile можно создавать кроссплатформенные мобильные приложения и совместно использовать общий код между Android и iOS, например, бизнес-логику, подключение и многое другое.

Ознакомьтесь с разделом Начало работы с Kotlin Multiplatform Mobile и Практическое руководство Kotlin Multiplatform: Сети и хранение данных, где вы создадите приложение для Android и iOS, которое включает модуль с общим кодом для обеих платформ.

Веб-приложения полного стека

Еще один сценарий, где совместное использование кода может принести преимущества, — это связанное приложение, где логика может быть повторно использована как на сервере, так и на стороне клиента, работающем в браузере. Это также поддерживается Kotlin Многоплатформенностью.

См. учебник Создание веб-приложения полного стека с помощью Kotlin Многоплатформенности, где вы создадите связанное приложение, состоящее из серверной части, использующей Kotlin/JVM, и веб-клиента, использующего Kotlin/JS.

Многоплатформенные библиотеки

Kotlin Многоплатформенность также полезна для авторов библиотек. Вы можете создать многоплатформенную библиотеку с общим кодом и ее платформенно-специфическими реализациями для платформ JVM, JS и Native. После публикации многоплатформенная библиотека может использоваться в других кроссплатформенных проектах в качестве зависимости.

См. учебник Создание и публикация многоплатформенной библиотеки, где вы создадите многоплатформенную библиотеку, протестируете ее и опубликуете в Maven.

Общий код для мобильных и веб-приложений

Еще один популярный случай использования Kotlin Многоплатформенности — это совместное использование одного и того же кода в приложениях Android, iOS и веб-приложениях. Это сокращает объем бизнес-логики, кодируемой разработчиками фронтенда, и помогает более эффективно реализовывать продукты, уменьшая усилия по кодированию и тестированию.

См. пример проекта RSS Reader — кроссплатформенное приложение для iOS и Android с настольными и веб-клиентами, реализованными в качестве экспериментальных функций.

Как работает Kotlin Многоплатформенность

Kotlin Multiplatform
  • Общий Kotlin включает язык, основные библиотеки и базовые инструменты. Код, написанный на общем Kotlin, работает везде на всех платформах.

  • С помощью библиотек Kotlin Многоплатформенности вы можете повторно использовать многоплатформенную логику в общем и платформенно-специфическом коде. Общий код может опираться на набор библиотек, охватывающих повседневные задачи, такие как HTTP, сериализацию и управление сопроцессами.

  • Для взаимодействия с платформами используйте платформенно-специфические версии Kotlin. Платформенно-специфические версии Kotlin (Kotlin/JVM, Kotlin/JS, Kotlin/Native) включают расширения языка Kotlin, а также платформенно-специфические библиотеки и инструменты.

  • Через эти платформы вы можете получить доступ к платформенному нативному коду (JVM, JS и Native) и использовать все возможности нативного кода.

Обмен кодом между платформами

С помощью Kotlin Многоплатформенности потратьте меньше времени на написание и сопровождение одного и того же кода для разных платформ — просто используйте механизмы, которые предоставляет Kotlin:

  • Обмен кодом между всеми платформами, используемыми в вашем проекте. Используйте его для обмена общей бизнес-логикой, которая применима ко всем платформам.

  • Обмен кодом между некоторыми платформами, включенными в ваш проект, но не всеми. Делайте это, когда вы можете повторно использовать большую часть кода в подобных платформах:

    Code shared for iOS targets
  • Если вам нужно получить доступ к платформенно-специфическим API из общего кода, используйте механизм Kotlin ожидаемых и фактических объявлений.

Начало работы

  • Просмотрите наши примеры и руководства, если хотите создать приложения или библиотеки, ориентированные на JVM, JavaScript и другие платформы

  • Начните с начального руководства по Kotlin Multiplatform Mobile, если хотите создать приложения для iOS и Android с общим кодом

Новичок в Kotlin? Посмотрите начальное руководство по Kotlin.

Примеры проектов

Посмотрите примеры кроссплатформенных приложений, чтобы понять, как работает Kotlin Многоплатформенность:

  • Примеры Kotlin Multiplatform Mobile

  • Приложение KotlinConf

  • Приложение KotlinConf Spinner

  • Создание веб-приложения полного стека с помощью Kotlin Многоплатформенности

Последнее изменение: 20 сентября 2022
Начало работы с Kotlin Kotlin для серверной стороны

© 2010–2022 JetBrains s.r.o. and Kotlin Programming Language contributors
Licensed under the Apache License, Version 2.0.
https://kotlinlang.org/docs/multiplatform.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API