Kotlin

статично типізована мова програмування

Kotlin (Ко́тлін) — статично типізована мова програмування, що працює поверх JVM і розробляється компанією JetBrains. Також компілюється в JavaScript. Мову названо на честь острова Котлін у Фінській затоці, на якому розміщена частина Кронштадту[2].

Kotlin
Парадигмаузагальнене програмування, рефлексія, конкурентні обчислення, об'єктно-орієнтоване програмування, функційне програмування, імперативне програмування, структурне програмування і декларативне програмування
Дата появи22 липня 2011
ТворціJetBrains
РозробникJetBrains
Останній реліз1.9.24 (7 травня, 2024; 7 місяців тому (2024-05-07))
Тестова версія2.0.0 RC3 (10 травня, 2024; 7 місяців тому (2024-05-10))
Система типізаціїстатична
Під впливом відJava, Scala, Groovy, Gosu, Ceylon, C#[1]
ПлатформаJava Virtual Machine
Операційна системабудь-яка із тих, що підтримують JVM
ЛіцензіяApache 2
Звичайні розширення файлів.kt або .kts
Репозиторій вихідного кодуgithub.com/JetBrains/kotlin
Вебсайтkotlinlang.org

Автори ставили перед собою ціль створити лаконічнішу та типо-безпечнішу мову, ніж Java, і простішу, ніж Scala[2]. Наслідками спрощення, порівняно з Scala стали також швидша компіляція та краща підтримка IDE[3].

Мова розробляється з 2010 року, публічно представлена в липні 2011[1]. Початковий код було відкрито в лютому 2012[4]. В лютому було випущено milestone 1, який містив плагін для IDEA. У червні — milestone 2 з підтримкою Android[5]. У грудні 2012 року вийшов milestone 4 та забезпечив підтримку Java 7[6]. Станом на листопад 2015 року основні можливості мови стабілізовані, готується реліз версії 1.0[7]. В грудні 2015 року з'явився реліз-кандидат версії 1.0, а 15 лютого 2016 року відбувся реліз версії 1.0.

З 17 травня 2017 року входить в список офіційно підтримуваних мов для розробки застосунків для платформи Android.[8]

З 7 травня 2019 року є рекомендованою мовою програмування для розробки Android застосунків.[9]

15 листопада 2023 року було випущено мажорну бета версію kotlin 2.0.0 Beta1

Синтаксис

ред.

Процедурний стиль програмування

ред.

Kotlin послаблює обмеження Java, що дозволяє статичним методам та змінним існувати лише в тілі класу. Статичні об'єкти та функції можуть бути визначені на верхньому рівні пакету без необхідності створення надлишкового рівня класів. Для сумісності з Java у Kotlin передбачено анотацію JvmName, яка визначає ім'я класу, що використовується, коли пакунок переглядається з проекту Java.

Точка входу

ред.

Як і у C, C++, C#, Java та Go, точкою входу до програми на Kotlin є функція з назвою "main", якій можна передати масив, що містить будь-які аргументи командного рядка. Це необов'язково, оскільки у Kotlin 1.3 підтримується інтерполяція рядків у стилі командного рядка Perl, PHP та Unix. Також підтримується виведення типів.

// Hello, World! 
fun main() {
    val scope = "World"
    println("Hello, $scope!")
}

fun main(args: Array<String>) {
    for (arg in args)
        println(arg)
}

Див. також

ред.

Примітки

ред.
  1. а б JetBrains produces another Java alternative. The H. 22 липня 2011. Архів оригіналу за 27 липня 2013. Процитовано 29 жовтня 2015.(англ.)
  2. а б Kotlin — конкурент Java і Scala. Открытые системы[ru]. липень 2011. Архів оригіналу за 10 січня 2014. Процитовано 29 жовтня 2015.(рос.)
  3. Андрей Бреслав. Язык программирования Kotlin // Открытые системы[ru]. — 2011. — № 09.(рос.)
  4. Java-alternative Kotlin now available as open source. The H. 14 лютого 2012. Архів оригіналу за 27 липня 2013. Процитовано 29 жовтня 2015.(англ.)
  5. Kotlin M2 now runs on Android too. The H. 04 червня 2012. Архів оригіналу за 24 липня 2013. Процитовано 29 жовтня 2015.(англ.)
  6. Fourth Kotlin milestone adds annotation tool. The H. 12 грудня 2012. Архів оригіналу за 27 липня 2013. Процитовано 29 жовтня 2015.(англ.)
  7. Kotlin 1.0 Beta 2 is Out!. 16 листопада 2015. Архів оригіналу за 30 грудня 2015. Процитовано 29 грудня 2015.(англ.)
  8. Android Announces Support for Kotlin. Android Developers Blog (амер.). Архів оригіналу за 18 травня 2017. Процитовано 18 травня 2017.
  9. Kotlin is now Google’s preferred language for Android app development. TechCrunch (амер.). Архів оригіналу за 17 червня 2020. Процитовано 8 травня 2019. [Архівовано 2020-06-17 у Archive.is]

Посилання

ред.