Kotlin

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

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

Kotlin
Парадигма об'єктно-орієнтоване програмування, функційне програмування, імперативне програмування, структурне програмування, декларативне програмування, узагальнене програмування, Рефлексія і конкурентні обчислення
Дата появи 22 липня 2011
Творці JetBrains
Розробник JetBrains
Останній реліз 1.9.23 (7 березня, 2024; 54 дні тому (2024-03-07))
Тестова версія 2.0.0 Beta 5 (20 березня, 2024; 41 день тому (2024-03-20))
Система типізації статична
Під впливом від 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 (амер.). Процитовано 8 травня 2019.{{cite web}}: Обслуговування CS1: Сторінки з параметром url-status, але без параметра archive-url (посилання)

Посилання ред.