Spec-Zone.ru › Kotlin 1.8

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

Kotlin Многоплатформенность находится в стадии Бета. Она практически стабильна, но в будущем могут потребоваться шаги миграции. Мы сделаем всё возможное, чтобы минимизировать изменения, которые вам придётся внести.

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

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

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

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

Ознакомьтесь с руководствами Начало работы с Kotlin Multiplatform Mobile и Создание многоплатформенного приложения с использованием Ktor и SQLDelight, где вы создадите приложения для 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 ожидаемых и фактических объявлений.

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

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

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

Новички в Kotlin? Ознакомьтесь с Началом работы с Kotlin.

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

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

  • Примеры Kotlin Multiplatform Mobile

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

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

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

Последнее изменение: 10 января 2023 г.
Начало работы с Kotlin Kotlin для серверной стороны

© 2010–2023 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