Spec-Zone.ru › Kotlin 1.9

Kotlin для JavaScript

Kotlin/JS предоставляет возможность транспилировать ваш код Kotlin, стандартную библиотеку Kotlin и любые совместимые зависимости в JavaScript. Текущая реализация Kotlin/JS ориентирована на ES5.

Рекомендуемый способ использования Kotlin/JS — через плагин Gradle kotlin.multiplatform. Он позволяет легко настроить и контролировать Kotlin-проекты, нацеленные на JavaScript, в одном месте. Это включает в себя такие важные функции, как управление объединением вашего приложения, добавление JavaScript-зависимостей напрямую из npm и многое другое. Чтобы получить обзор доступных вариантов, ознакомьтесь с Настройка проекта Kotlin/JS.

Компилятор Kotlin/JS IR

Компилятор Kotlin/JS IR имеет ряд улучшений по сравнению со старым компилятором. Например, он уменьшает размер сгенерированных исполняемых файлов за счёт устранения неиспользуемого кода и обеспечивает более плавную интеграцию с JavaScript-экосистемой и её инструментами.

Старый компилятор устарел с выпуском Kotlin 1.8.0.

Генерируя файлы объявлений TypeScript (d.ts) из кода Kotlin, компилятор IR упрощает создание «гибридных» приложений, которые объединяют код TypeScript и Kotlin, а также использование функциональности совместного использования кода с помощью Kotlin Multiplatform.

Чтобы узнать больше о доступных функциях в компиляторе Kotlin/JS IR и о том, как попробовать его в своём проекте, посетите страницу документации компилятора Kotlin/JS IR и руководство по миграции.

Фреймворки Kotlin/JS

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

KVision

KVision — объектно-ориентированный веб-фреймворк, который позволяет писать приложения на Kotlin/JS с готовыми компонентами, которые можно использовать в качестве строительных блоков для пользовательского интерфейса вашего приложения. Вы можете использовать как реактивные, так и императивные модели программирования для создания вашего фронтенда, использовать коннекторы для Ktor, Spring Boot и других фреймворков для интеграции с вашими приложениями на стороне сервера и совместно использовать код с помощью Kotlin Multiplatform.

Посетите сайт KVision для документации, обучающих материалов и примеров.

Для обновлений и обсуждений фреймворка присоединяйтесь к каналам #kvision и #javascript в канале Kotlin Slack.

fritz2

fritz2 — автономный фреймворк для создания реактивных веб-интерфейсов. Он предоставляет собственный тип-сейф DSL для создания и рендеринга HTML-элементов, а также использует сопрограммы и потоки Kotlin для выражения компонентов и их привязок к данным. Он предоставляет управление состоянием, валидацию, маршрутизацию и многое другое, и интегрируется с проектами Kotlin Multiplatform.

Посетите сайт fritz2 для документации, обучающих материалов и примеров.

Для обновлений и обсуждений фреймворка присоединяйтесь к каналам #fritz2 и #javascript в канале Kotlin Slack.

Doodle

Doodle — фреймворк для пользовательского интерфейса на основе векторов для Kotlin/JS. Приложения Doodle используют возможности браузера по отрисовке пользовательского интерфейса вместо использования DOM, CSS или Javascript. Используя этот подход, Doodle даёт вам точный контроль над отрисовкой произвольных элементов UI, векторных фигур, градиентов и пользовательских визуализаций.

Посетите сайт Doodle для документации, обучающих материалов и примеров.

Для обновлений и обсуждений фреймворка присоединяйтесь к каналам #doodle и #javascript в канале Kotlin Slack.

Присоединяйтесь к сообществу Kotlin/JS

Вы можете присоединиться к каналу #javascript в официальном Kotlin Slack, чтобы пообщаться с сообществом и командой.

Последнее изменение: 19 июня 2023
Kotlin Native Kotlin для науки о данных

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

Spec-Zone.ru

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