Kotlin

Pause
ИИ-обзор статьи
Kotlin — статически типизированный объектно-ориентированный язык программирования, разработанный компанией JetBrains, работающий поверх JVM и являющийся приоритетным для разработки приложений на платформе Android.
Разработка и первые релизы
Язык разрабатывается с 2010 года под руководством Андрея Бреслава. В 2012 году исходный код открыли, затем выходили milestones с поддержкой IDEA, Android и Java 7; в феврале 2016 состоялся релиз версии 1.0, а в марте 2017 — версии 1.1.
Поддержка Android и смена руководства
В мае 2017 года Google включила инструменты Kotlin в Android Studio 3.0, а в 2019 году объявила Kotlin приоритетным языком для Android. В ноябре 2020 года руководство разработкой перешло от Андрея Бреслава к Роману Елизарову.
Постфиксные типы и объявления
Синтаксис Kotlin унаследовал от языка ML постфиксное указание типов: сначала указывается идентификатор, затем через двоеточие — тип. Для объявления функций и переменных используются ключевые слова fun и val. Точка с запятой в конце строки, как в Scala, необязательна.
Интерполяция строк и вывод типов
Как в Perl и shell, в строки Kotlin можно встраивать переменные, которые заменяются на их содержимое. Компилятор также поддерживает автоматический вывод типов, что сокращает объявления.

Kotlin (Ко́тлин) — статически типизированный, объектно-ориентированный язык программирования, работающий поверх Java Virtual Machine и разрабатываемый компанией JetBrains. Также компилируется в JavaScript и в исполняемый код ряда платформ через инфраструктуру LLVM. Язык назван в честь острова Котлин в Финском заливе, на котором расположен город Кронштадт[4].

Авторы ставили целью создать язык более лаконичный и типобезопасный, чем Java, и более простой, чем Scala[4]. Следствием упрощения по сравнению со Scala стали также более быстрая компиляция и лучшая поддержка языка в IDE[5]. Язык полностью совместим с Java, что позволяет Java-разработчикам постепенно перейти к его использованию; в частности, язык также встраивается Android, что позволяет для существующего Android-приложения внедрять новые функции на Kotlin без переписывания приложения целиком.

История

Язык разрабатывается с 2010 года под руководством Андрея Бреслава[6][7], представлен общественности в июле 2011[8]. Исходный код реализации языка открыт в феврале 2012[9]. В феврале выпущен milestone 1, включающий плагин для IDEA. В июне — milestone 2 с поддержкой Android[10]. В декабре 2012 года вышел milestone 4, включающий, в частности, поддержку Java 7[11].

В феврале 2016 года вышел официальный релиз-кандидат версии 1.0[12], а 15 февраля 2016 года — релиз 1.0[13]. 1 марта 2017 вышел релиз 1.1[14].

В мае 2017 года компания Google сообщила, что инструменты языка Kotlin, основанные на JetBrains IDE, будут по стандарту включены в Android Studio 3.0 — официальный инструмент разработки для ОС Android[15].

На Google I/O 2019 было объявлено, что язык программирования Kotlin стал приоритетным в разработке под Android[16].

В ноябре 2020 года Бреслав объявил об уходе из JetBrains, руководство разработкой языка было передано Роману Елизарову[17].

Синтаксис

Синтаксис языка преимущественно комбинирует наследство из двух языковых ветвей: Cи/C++/Java и ML (по словам создателей, через Scala). Из наиболее характерных элементов, от первой ветви унаследованы блоки кода, обрамлённые фигурными скобками; а от второй — постфиксное указание типов переменных и параметров (сперва идентификатор, затем разделитель — двоеточие, и затем тип) и ключевые слова «fun» и «val». Точка с запятой как разделитель операторов необязательна (как в Scala, Groovy и JavaScript); в большинстве случаев перевода строки достаточно, чтобы компилятор понял, что выражение закончилось. Кроме объектно-ориентированного подхода, Kotlin также поддерживает процедурный стиль с использованием функций. Как и в Си, C++ и D, точка входа в программу — функция main, принимающая массив параметров командной строки. Программы на Kotlin также поддерживают perl- и shell-стиль интерполяции строк (переменные, включённые в строку, заменяются на своё содержимое). Также поддерживается вывод типов.

Примеры кода

fun main() {
  val scope = "world"
  println("Hello, $scope!")
}
fun sayHello(maybe: String?, neverNull: Int) {
   // use of elvis operator
   val name: String = maybe ?: "stranger"
   println("Hello $name")
}
  // returns null if foo is null, or bar() returns null, or baz() returns null
  foo ?. bar() ?. baz()

Примечания

  1. ↑ https://github.com/JetBrains/kotlin/releases/tag/v1.8.10
  2. ↑ https://www.rankred.com/new-programming-languages-to-learn/
  3. ↑ https://github.com/JetBrains/kotlin/blob/v1.3.61/license/README.md
  4. ↑ 1 2 Kotlin — конкурент Java и Scala, Открытые системы (июль 2011). Архивировано 10 января 2014 года. Дата обращения: 26 мая 2013.
  5. ↑ Андрей Бреслав. Язык программирования Kotlin // Открытые системы. — 2011. — № 09.
  6. ↑ Кристина Шибаева. “Создатель языка программирования Kotlin Андрей Бреслав — о недостатке женщин в IT, полиамории и психотерапии”. Собака. Архивировано из оригинала 2022-01-08. Дата обращения 2022-01-09. Используется устаревший параметр |deadlink= (справка)
  7. ↑ Андрей Бреслав — о разработке Kotlin, профессии программиста и о том, как все успевать. ИТМО (26 ноября 2018). Дата обращения: 8 марта 2023.
  8. ↑ JetBrains produces another Java alternative, The H (22 July 2011). Дата обращения: 26 мая 2013.
  9. ↑ Java-alternative Kotlin now available as open source, The H (14 февраля 2012). Архивировано 27 июля 2013 года. Дата обращения: 26 мая 2013.
  10. ↑ Kotlin M2 now runs on Android too, The H (4 июня 2012). Архивировано 24 июля 2013 года. Дата обращения: 26 мая 2013.
  11. ↑ Fourth Kotlin milestone adds annotation tool, The H (12 декабря 2012). Архивировано 27 июля 2013 года. Дата обращения: 26 мая 2013.
  12. ↑ Kotlin 1.0 Release Candidate is Out! (4 февраля 2016). Архивировано 8 февраля 2016 года. Дата обращения: 7 февраля 2016.
  13. ↑ Kotlin 1.0 Released: Pragmatic Language for JVM and Android (англ.). Kotlin Blog. Дата обращения: 15 февраля 2016. Архивировано 22 октября 2016 года.
  14. ↑ Встречайте Kotlin 1.1: JavaScript, корутины и многое другое (рус.). Архивировано 19 марта 2017 года. Дата обращения: 11 марта 2017.
  15. ↑ Google добавила Kotlin как официальный язык программирования для Android (рус.) (17 мая 2017). Архивировано 9 июля 2017 года. Дата обращения: 18 мая 2017.
  16. ↑ Евгений Делюкин. Google объявила Kotlin приоритетным языком программирования для разработки Android-приложений — Разработка на vc.ru. vc.ru (7 мая 2019). Дата обращения: 5 июня 2019. Архивировано 5 июня 2019 года.
  17. ↑ Andrey Breslav. Roman Elizarov is the new Project Lead for Kotlin. JetBrains (19 ноября 2020). Дата обращения: 9 января 2022. Архивировано 20 января 2022 года.

Литература

  • Жемеров Д., Исакова С. Kotlin в действии. — ДМК-Пресс, 2017. — 402 с. — ISBN 978-5-97060-497-7.
  • Аделекан Ияну. Kotlin: программирование на примерах. — БХВ-Петербург, 2020. — 432 с. — ISBN 978-5-9775-6673-5.

Ссылки

Pause