Spec-Zone.ru › Kotlin 1.8

Kotlin для серверной стороны

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

  • Выразительность: инновационные языковые возможности Kotlin, такие как поддержка безопасных по типам билдеров и делегированных свойств, помогают создавать мощные и удобные абстракции.

  • Масштабируемость: поддержка Kotlin корутин помогает создавать серверные приложения, которые масштабируются до огромного числа клиентов при скромных требованиях к оборудованию.

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

  • Миграция: Kotlin поддерживает постепенную миграцию больших кодовых баз из Java в Kotlin. Вы можете начать писать новый код на Kotlin, сохраняя при этом старые части вашей системы на Java.

  • Инструментарий: помимо отличной поддержки IDE в целом, Kotlin предлагает инструментарий, специфичный для фреймворков (например, для Spring), в плагине для IntelliJ IDEA Ultimate.

  • Кривая обучения: для Java-разработчика начать работу с Kotlin очень просто. Автоматический конвертер Java в Kotlin, включённый в плагин Kotlin, помогает с первыми шагами. Kotlin Koans могут помочь освоить ключевые возможности языка с помощью серии интерактивных упражнений.

Фреймворки для серверной разработки с Kotlin

  • Spring использует языковые возможности Kotlin для предоставления более лаконичных API, начиная с версии 5.0. Онлайн-генератор проектов позволяет быстро создать новый проект на Kotlin.

  • Vert.x, фреймворк для создания реактивных веб-приложений на JVM, предлагает специализированную поддержку Kotlin, включая полную документацию.

  • Ktor — фреймворк, разработанный JetBrains для создания веб-приложений на Kotlin, использующий корутины для высокой масштабируемости и предоставляющий удобный и понятный API.

  • kotlinx.html — DSL, который можно использовать для создания HTML в веб-приложениях. Он служит альтернативой традиционным системам шаблонизации, таким как JSP и FreeMarker.

  • Micronaut — современный JVM-фреймворк для создания модульных, легко тестируемых микросервисов и серверless-приложений. Он поставляется со множеством полезных встроенных функций.

  • http4k — функциональный инструмент с минимальным объёмом для приложений HTTP на Kotlin, написанный на чистом Kotlin. Библиотека основана на статье «Ваш сервер как функция» от Twitter и представляет собой моделирование как HTTP-серверов, так и клиентов в виде простых функций Kotlin, которые можно комбинировать вместе.

  • Javalin — очень лёгкий веб-фреймворк для Kotlin и Java, который поддерживает WebSocket, HTTP2 и асинхронные запросы.

  • Доступные варианты для сохранения данных включают прямой доступ к JDBC, JPA и использование баз данных NoSQL через их Java-драйверы. Для JPA плагин kotlin-jpa адаптирует скомпилированные Kotlin классы к требованиям фреймворка.

Развёртывание серверных приложений на Kotlin

Приложения на Kotlin можно развернуть на любом хосте, который поддерживает Java-веб-приложения, включая Amazon Web Services, Google Cloud Platform и другие.

Чтобы развернуть приложение Kotlin на Heroku, вы можете следовать официальному руководству Heroku.

AWS Labs предоставляет образец проекта, показывающий использование Kotlin для написания функций AWS Lambda.

Google Cloud Platform предлагает ряд обучающих материалов для развертывания приложений Kotlin на GCP, как для Ktor и App Engine, так и для Spring и App Engine. Кроме того, существует интерактивный учебный курс по развертыванию приложения Kotlin Spring.

Продукты, использующие Kotlin на серверной стороне

Corda — открытая платформа распределённого реестра, поддерживаемая крупными банками и полностью написанная на Kotlin.

JetBrains Account, система, ответственная за весь процесс продажи и проверки лицензий в JetBrains, написана на 100% на Kotlin и работает в продакшене с 2015 года без серьёзных проблем.

Следующие шаги

  • Для более глубокого знакомства с языком, ознакомьтесь с документацией Kotlin на этом сайте и Kotlin Koans.

  • Посмотрите вебинар "Micronaut для микросервисов с Kotlin" и изучите подробное руководство, демонстрирующее, как использовать расширяющие функции Kotlin в фреймворке Micronaut.

  • http4k предоставляет CLI для создания полных проектов и starter репозиторий для создания полной CI/CD-системы с использованием GitHub, Travis и Heroku одной командой bash.

  • Хотите мигрировать из Java в Kotlin? Узнайте, как выполнять типичные задачи со строками в Java и Kotlin.

Последнее изменение: 10 января 2023
Kotlin Многоплатформенность Kotlin для Android

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

Spec-Zone.ru

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