|
Язык и среда
|
Java + JVM
|
Kotlin (JVM / Native / JS)
|
Совместим с Java, но короче, null-safe, функционален.
|
|
Web-фреймворк (REST, MVC)
|
Spring Boot / Spring MVC
|
Ktor, Spring Boot (Kotlin DSL), Micronaut, Javalin
|
Ktor — родной Kotlin-фреймворк от JetBrains; поддерживает корутины и DSL-маршруты.
|
|
DI / IoC
|
Spring Context / @Autowired
|
Koin, Kodein-DI, DI-модуль Ktor
|
Koin — лёгкий DSL-контейнер, полностью в стиле Kotlin.
|
|
ORM и базы данных
|
Hibernate / JPA / Spring Data JPA
|
Exposed, Ktorm, JOOQ
|
Exposed от JetBrains — type-safe SQL DSL и ORM.
|
|
Конфигурации
|
application.yml
|
application.conf (HOCON), Typesafe Config, .env
|
Kotlin поддерживает формат HOCON через библиотеку ConfigFactory.
|
|
Безопасность / JWT / RBAC
|
Spring Security
|
Ktor Auth, Ktor JWT, Micronaut Security
|
Встроенная аутентификация, фильтры и JWT middleware.
|
|
Документирование API
|
Springdoc-OpenAPI
|
Ktor-Swagger, OpenAPI Generator, Ktor OpenAPI plugin
|
Автогенерация Swagger UI из DSL-описания маршрутов.
|
|
Тестирование
|
JUnit5, Mockito
|
Kotest, MockK, Spek, JUnit5 (Kotlin DSL)
|
Kotest и MockK — Kotlin-ориентированные аналоги JUnit + Mockito.
|
|
Testcontainers
|
testcontainers-java
|
testcontainers-kotlin (обёртка над Java API)
|
Полностью совместим, просто Kotlin-friendly.
|
|
Асинхронность / потоки
|
Executors, CompletableFuture
|
Kotlin Coroutines, Flow
|
Асинхронность встроена в язык.
|
|
Логирование
|
SLF4J, Logback
|
kotlin-logging, Logback (тот же)
|
Kotlin-обёртка над SLF4J — лаконичнее и безопаснее.
|
|
Документация кода
|
Javadoc
|
KDoc, Dokka
|
Dokka создаёт HTML / Markdown-документацию из KDoc.
|
|
Мониторинг / Actuator
|
Spring Actuator
|
Micrometer + Prometheus, встроенные health-роуты Ktor
|
Аналогичная система метрик и health-чеков.
|
|
Сборка и зависимости
|
Maven / Gradle
|
Gradle Kotlin DSL (build.gradle.kts)
|
Kotlin DSL для конфигурации проекта.
|