Кратко

Котлин — современный статически типизированный язык программирования от JetBrains. Он компилируется для JVM, Android, JavaScript и нативных платформ через Котлин Multiplatform. Цели языка: лаконичность, безопасность (особенно в работе с null), удобная совместимость с Java и сильная поддержка в IntelliJ IDEA. В 2017 году Google объявил о поддержке Котлин в Android; сегодня Котлин — предпочтительный язык для нового кода под Android и широко используется на сервере со Spring, Ktor и другими стеками.
JetBrains; лицензия Apache 2
JVM — полная совместимость с Java
Также: JS, Native, Multiplatform
Крупнейшие экосистемы: Android и backend
Что такое Котлин технически

На JVM Котлин компилируется в тот же байткод, что и Java: можно вызывать Java-библиотеки из Котлин и Котлин из Java без «клея». Стандартная библиотека добавляет функциональный стиль работы с коллекциями, функции области видимости и корутины — при этом сам язык компактен: неизменяемость через val, nullable-типы в системе типов и data class для простых данных.

Где работает Котлин — нажмите узлы
Исходники Котлин (.kt)
JVM, сервер, утилиты
📱Android
🌐JavaScript (K/JS)
🦀Native (K/N)
🔗Multiplatform
Типичный путь для JVM — как у Java до виртуальной машины
Исходники .kt
Ваш код
kotlinc / Gradle
Компилятор K1 или K2
Байткод .class
Или IR для других бэкендов
JVM
Как у Java
Поставка
JAR, Spring Boot, APK
JDK, Котлин и система сборки

Для разработки под JVM по-прежнему нужен JDK — компилятор Котлин опирается на него для стандартных API Java и генерации байткода. На практике Gradle или Maven подтягивают плагин и компилятор Котлин; в IntelliJ встроена навигация, рефакторинг и отладка в смешанных Java/Котлин-модулях.

Условные уровни
IDE и сборкаЯзык КотлинСреда JVM
Условные уровни
Вехи на временной шкале
Нажмите веху
Где применяется Котлин
Выберите область
Котлин распространяется под лицензией Apache 2.0 — без платы за runtime; исходники компилятора на GitHub.