Kotlin (Котлин) — як забони барноманависии статикӣ чопшуда, ба объект нигаронидашуда аст, ки дар болои мошини виртуалии Java кор мекунад ва аз ҷониби JetBrains таҳия шудааст. Инчунин ба JavaScript ва коди иҷрошаванда дар як қатор платформаҳо тавассути инфрасохтори LLVM тартиб медиҳад. Забон ба номи ҷазираи Котлини Русия дар Халиҷи Финландия, ки дар он шаҳри Кронштадт ҷойгир аст [3].

Навъ JVM language[d] ва object-based language[d]
Тавсеъадиҳанда JetBrains
Нахустин нусха 22 июл 2011
Платформаи дастгоҳӣ Java virtual machine[d], Dalvik VM[d], JavaScript[d], АйОс, watchOS[d], tvOS[d], macOS, Linux[d], Windows ва WebAssembly[d]
Охирин нусха
Форматҳои файлҳои хондашаванда Kotlin Source Code File[d]
Форматҳои файлҳои тавлидшуда Kotlin Source Code File[d]
Иҷозатнома Apache Software License 2.0[d][2]
Вебгоҳ kotlinlang.org(англ.)
 Парвандаҳо дар Викианбор

Ҳадафи муаллифон эҷод кардани забоне буд, ки нисбат ба Java мухтасартар ва бехатартар ва аз Scala соддатар бошад [3]. Соддасозӣ дар муқоиса бо Scala инчунин боиси тезтар тартиб додан ва дастгирии беҳтари забон дар IDE гардид . Забон бо Java комилан мувофиқ аст, ки ба таҳиягарони Java имкон медиҳад, ки тадриҷан ба истифодаи он гузаранд; аз ҷумла, ин забон низ Android-ро дарунсохт, ки имкон медиҳад як барномаи мавҷудаи Android хусусиятҳои навро дар Котлин бидуни дубора навиштани тамоми барнома амалӣ кунад.

Таърих

вироиш

Ин забон аз соли 2010 таҳти роҳбарии Андрей Бреслав [4] [5] таҳия шуда, моҳи июли соли 2011 [6] пешкаши омма гардид. Рамзи сарчашма барои татбиқи забон дар моҳи феврали соли 2012 кушода шуд [7] . Milestone 1 дар моҳи феврал бароварда шуд, аз ҷумла плагин барои IDEA . Дар моҳи июн - марҳилаи 2 бо дастгирии Android [8] . Дар моҳи декабри соли 2012 марҳилаи 4 бароварда шуд, аз ҷумла, дастгирии Java 7 [9] .

Дар моҳи феврали соли 2016, версияи расмии номзади версияи 1.0 [10] ва 15 феврали соли 2016 нашри 1.0 [11] бароварда шуд. Нашри 1.1 1 марти соли 2017 бароварда шуд [12] .

Дар моҳи майи соли 2017 Google эълон кард, ки абзорҳои забони Kotlin дар асоси JetBrains IDE ҳамчун стандарт ба Android Studio 3.0, воситаи расмии таҳияи OS Android дохил карда мешаванд [13] .

Дар Google I/O 2019 эълон шуд, ки забони барномасозии Котлин ба авлавияти таҳияи Android табдил ёфтааст [14] .

Моҳи ноябри соли 2020 Бреслав эълон кард, ки аз JetBrains хориҷ мешавад; идоракунии рушди забон ба Роман Елизаров [15] гузашт.

Синтаксис

вироиш

Синтаксиси забон пеш аз ҳама меросро аз ду шохаи забон муттаҳид мекунад: C / C++ / Java ва ML (ба гуфтаи эҷодкорон, тавассути Scala ). Аз унсурҳои хостарин блокҳои код, ки бо қавсҳои ҷингила иҳота шудаанд, аз шохаи якум мерос гирифта мешаванд; ва аз дуюм - нишонаи постфикси навъҳои тағирёбанда ва параметрҳо (аввал идентификатор, баъд ҷудокунанда - ду нуқта ва баъд навъи) ва калимаҳои калидӣ " fun " ва " val ". Нуқтаи вергул ҳамчун ҷудокунандаи изҳорот ихтиёрӣ аст (ба мисли Scala, Groovy ва JavaScript); дар аксари мавридҳо, як сатри нав кофӣ аст, то компилятор фаҳмад, ки ифода ба охир расидааст. Ба ғайр аз равиши ба объект нигаронидашуда, Котлин инчунин услуби мурофиавиро бо истифода аз функсияҳо дастгирӣ мекунад. Тавре ки дар C, C++ ва D, нуқтаи вуруд ба барнома вазифаи main мебошад, ки массиви параметрҳои сатри фармонро қабул мекунад. Барномаҳои Kotlin инчунин интерполятсияи сатри Perl ва сабки shell- ро дастгирӣ мекунанд (тағйирёбандаҳои ба сатр дохилшуда бо мундариҷаи онҳо иваз карда мешаванд). Хулосаи навъи низ дастгирӣ карда мешавад.

Намунаҳои код

вироиш
fun main() {
 val scope = "world"
 println("Hello, $scope!")
}
fun sayHello(nullable: String?, neverNull: Int) {
  // use of elvis operator
  val name: String = nullable ?: "stranger"
  println("Hello $name")
}
 // returns null if foo is null, or bar() returns null, or baz() returns null
 foo ?. bar() ?. baz()
  1. Release Kotlin 2.0.20 (Repository)
  2. https://github.com/JetBrains/kotlin/blob/v1.3.61/license/README.md
  3. 3.0 3.1 Kotlin — конкурент Java и Scala, Открытые системы (Июл 2011). Бойгонӣ шудааст 10 Январ 2014  сол. Проверено 26 май 2013.
  4. Кристина Шибаева. «Создатель языка программирования Kotlin Андрей Бреслав — о недостатке женщин в IT, полиамории и психотерапии». Собака. Санҷида шуд 2022-01-09.
  5. Андрей Бреслав — о разработке Kotlin, профессии программиста и о том, как все успевать(рус.)(пайванди дастнорас — таърих). ИТМО (26 ноябри 2018). 8 марти 2023 санҷида шуд. Баргирифта аз сарчашмаи аввал 8 марти 2023.
  6. JetBrains produces another Java alternative, The H[en] (22 июли 2011). Бойгонӣ шудааст 27 июли 2013  сол. Проверено 26 май 2013.
  7. Java-alternative Kotlin now available as open source, The H[en] (14 феврали 2012). Бойгонӣ шудааст 27 июли 2013  сол. Проверено 26 май 2013.
  8. Kotlin M2 now runs on Android too, The H (4 июни 2012). Бойгонӣ шудааст 24 июли 2013  сол. Проверено 26 май 2013.
  9. Fourth Kotlin milestone adds annotation tool, The H (12 Декабри 2012). Бойгонӣ шудааст 27 июли 2013  сол. Проверено 26 май 2013.
  10. Kotlin 1.0 Release Candidate is Out! (4 феврали 2016). Бойгонӣ шудааст 8 феврали 2016  сол. Проверено 7 феврали 2016.
  11. Kotlin 1.0 Released: Pragmatic Language for JVM and Android(англ.)(пайванди дастнорас — таърих). Kotlin Blog. 15 феврали 2016 санҷида шуд. Баргирифта аз сарчашмаи аввал 22 октябри 2016.
  12. Встречайте Kotlin 1.1: JavaScript, корутины и многое другое(рус.). Бойгонӣ шудааст 19 марти 2017  сол. Проверено 11 марти 2017.
  13. Google добавила Kotlin как официальный язык программирования для Android(рус.) (17 май 2017). Бойгонӣ шудааст 9 июли 2017  сол. Проверено 18 май 2017.
  14. Евгений Делюкин. Google объявила Kotlin приоритетным языком программирования для разработки Android-приложений — Разработка на vc.ru(пайванди дастнорас — таърих). vc.ru (7 май 2019). 5 июни 2019 санҷида шуд. Баргирифта аз сарчашмаи аввал 5 июни 2019.
  15. 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.

Пайвандҳо

вироиш
  • kotlinlang.org — вебгоҳи расмии языка Kotlin
  • kotlinlang.ru(рус.). Перевод официальной документации по языку Kotlin. — Русскоязычное открытое сообщество любителей Kotlin. 19 май 2017 санҷида шуд.
  • Андрей Бреслав. Язык программирования Kotlin // Открытые системы. — 2011. — № 09.
  • Kotlin в открытых кодах, Computerworld Россия (Апрел 2012). Проверено 26 май 2013.
  • Интервью с COO компании JetBrains Андреем Ивановым. Реактивные мозги // Журнал Хакер. — 26.03.2013.
  • Janice J. Heiss The Advent of Kotlin: A Conversation with JetBrains' Andrey Breslav(пайванди дастнорас — таърих). Oracle Technology Network (Апрел 2013). 7 июни 2013 санҷида шуд. Баргирифта аз сарчашмаи аввал 10 июли 2013.
  • Language of the Month: Kotlin. Language of the Month: Kotlin // Dr. Dobb's Journal. — 20 January, 2012., Andrew Binstock. The JVM As Language Farm Club // Dr. Dobb's Journal. — February 14, 2012.
  • Eric Bruno. A Long Look at JVM Languages // Dr. Dobb's Journal. — November 19, 2012.