Kontent qismiga oʻtish
Ilova test rejimida ishlamoqda: matnlar, jumlalar va soʻzlardagi xatoliklar tez orada tahrirchilar tomonidan tuzatiladi ✦
Ilova test rejimida ishlamoqda: matnlar, jumlalar va soʻzlardagi xatoliklar tez orada tahrirchilar tomonidan tuzatiladi ✦
Ilova test rejimida ishlamoqda: matnlar, jumlalar va soʻzlardagi xatoliklar tez orada tahrirchilar tomonidan tuzatiladi ✦
Ilova test rejimida ishlamoqda: matnlar, jumlalar va soʻzlardagi xatoliklar tez orada tahrirchilar tomonidan tuzatiladi ✦
Ilova test rejimida ishlamoqda: matnlar, jumlalar va soʻzlardagi xatoliklar tez orada tahrirchilar tomonidan tuzatiladi ✦
Ilova test rejimida ishlamoqda: matnlar, jumlalar va soʻzlardagi xatoliklar tez orada tahrirchilar tomonidan tuzatiladi ✦
Ilova test rejimida ishlamoqda: matnlar, jumlalar va soʻzlardagi xatoliklar tez orada tahrirchilar tomonidan tuzatiladi ✦
Ilova test rejimida ishlamoqda: matnlar, jumlalar va soʻzlardagi xatoliklar tez orada tahrirchilar tomonidan tuzatiladi ✦
Ilova test rejimida ishlamoqda: matnlar, jumlalar va soʻzlardagi xatoliklar tez orada tahrirchilar tomonidan tuzatiladi ✦
Ilova test rejimida ishlamoqda: matnlar, jumlalar va soʻzlardagi xatoliklar tez orada tahrirchilar tomonidan tuzatiladi ✦
Ilova test rejimida ishlamoqda: matnlar, jumlalar va soʻzlardagi xatoliklar tez orada tahrirchilar tomonidan tuzatiladi ✦
Ilova test rejimida ishlamoqda: matnlar, jumlalar va soʻzlardagi xatoliklar tez orada tahrirchilar tomonidan tuzatiladi ✦

Kotlin

ZiyoSfera, erkin ensiklopediya
Котлин
Парадигмалари Кўп парадигма: обектга йўналтирилган, функсионал, императив, блок тузилган, декларатив, умумий, рефлектив, бир вақтда
Муаллифи ЖетБраинс
Тузилган йили 22-июл, 2011-йил (15 йил аввал) (2011-07-22)
Платформа
Операцион тизим Cросс-платформ
Лицензия Апаче Лиcенсе 2.0
Файл кенгайтмалари .кт, .кц, .ктм
Бунга асос бўлган тиллар

Котлин[1] - ўзаро платформали, статик тарзда ёзилган, тип хулосасига эга умумий мақсадли дастурлаш тили. Котлин Жава билан тўлиқ ўзаро ишлаш учун мўлжалланган ва Котлин стандарт кутубхонасининг ЖВМ версияси Жава синф кутубхонасига боғлиқ[2], лекин турдаги хулосалар унинг синтаксисини янада ихчам бўлишига имкон беради. Котлин асосан ЖВМни мақсад қилиб олади, лекин ЖаваСcриптни (масалан, Реаcт[3] дан фойдаланадиган фронтенд wеб-иловалар учун) ёки ЛЛВМ орқали маҳаллий кодни (масалан, Андроид иловалари билан бизнес мантиқини алмашувчи маҳаллий иОС иловалари учун) компиляция қилади[4]. Тилни ривожлантириш харажатлари ЖетБраинс томонидан қопланади, Котлин фонди эса Котлин савдо белгисини ҳимоя қилади[5].

2019-йилнинг 7-майида Гоогле Котлин дастурлаш тили энди Андроид иловалари ишлаб чиқувчилари учун афзал қилинган тил эканлигини эълон қилди[6]. 2017-йил октабр ойида Андроид Студио 3.0 версияси чиққандан бери Котлин стандарт Жава компиляторига муқобил сифатида киритилган. Андроид Котлин компилятори сукут бўйича Жава 8 байт кодини ишлаб чиқаради (у ҳар қандай кейинги ЖВМ-да ишлайди), лекин дастурчи оптималлаштириш учун[7] Жава 9дан 18гача мақсадни танлаш имконини беради ёки кўпроқ функсияларга рухсат беради; Жава 16да тақдим этилган, Котлин 1.5да барқарор деб ҳисобланган ЖВМ учун икки томонлама ўзаро ишлашни қўллаб-қувватлайди.

Котлин интернетни қўллаб-қувватлайди; ЖаваСcрипт-га компиляция қилиш орқали (яъни, классик баcк-эндли Котлин/ЖС 1.3-версиясидан бери барқарор деб эълон қилинган), янги Котлин/ЖС эса (ИР -асосланган) 1.5.30 версиясидан бошлаб бета-версияда. Котлин/Нативе (масалан:: Аппле силикон қўллаб-қувватлаш) 1.3 версиясидан бери бета ҳисобланади.[8][9]

Тарих

Котлин маскотининг 2Д расми
Котлин маскотининг 3Д расми

2011-йил июл ойида ЖетБраинс бир йил давомида ишлаб чиқилаётган ЖВМ учун янги Прожеcт Котлин тилини тақдим этди.[10] ЖетБраинс етакчиси Дмитрий Жемеровнинг таъкидлашича, Сcала тилидан ташқари кўпчилик тиллар улар излаган функсияларга эга эмас. Бироқ, у камчилик сифатида Сcала-ни секин компиляция қилиш вақтини келтирди.[10] Котлиннинг белгиланган мақсадларидан бири Жава каби тез компиляция қилишдир. 2012-йил феврал ойида ЖетБраинс лойиҳани Апаче 2 лицензияси остида очди.[11]

Бу ном Санкт-Петербург яқинидаги Котлин оролидан келади. Андрей Бреслав жамоа уни орол шарафига номлашга қарор қилганини эслатиб ўтди, худди Жава Индонезиянинг Жава ороли шарафига номлангани каби[12](гарчи Жава дастурлаш тили орол эмас, балки қаҳва номи билан аталган бўлса ҳам).[13]

ЖетБраинс янги тил ИнтеллиЖ ИДЕА сотувини оширишига умид қилмоқда.[14]

Котлин Гит омборига биринчи мажбурият 2010-йил 8-ноябрда бўлган.[15]

Котлин 1.0 2016-йил 15-февралда чиқарилди.[16] Бу биринчи расмий барқарор релиз деб ҳисобланади ва ЖетБраинс ушбу версиядан бошлаб узоқ муддатли орқага қараб мувофиқликни ўз зиммасига олган.

Гоогле И/О 2017 кўргазмасида Гоогле Андроид -да Котлин учун биринчи даражали ёрдамни эълон қилди.[17]

Котлин 1.2 2017-йил 28-ноябрда чиқарилди.[18] ЖВМ ва ЖаваСcрипт платформалари ўртасида код алмашиш функсияси ушбу нашрга янги қўшилди (1.4 версиясидан кўп платформали дастурлаш „экспериментал“дан янгиланган алфа функсия[19]). Янги Котлин/ЖС Градле плагини билан тўлиқ стекли демо яратилди.[20][21]

Котлин 1.3 2018-йил 29-октабрда чиқарилди ва асинхрон дастурлаш учун короутинларни олиб келди.

2019-йилнинг 7-майида Гоогле Котлин дастурлаш тили энди Андроид иловаларини ишлаб чиқувчилар учун афзал қилинган тил эканлигини эълон қилди.[6]

Котлин 1.4 2020-йил август ойида чиқарилди масалан, Аппле платформаларини қўллаб-қувватлашга, яъни Обжеcтиве-C/Сwифт интеропига бироз ўзгартиришлар киритилган.[22]

Синтаксис

Процессуал дастурлаш услуби

Котлин Жава-нинг статик усуллар ва ўзгарувчиларга фақат синф танасида мавжуд бўлишига рухсат бериш чекловларини юмшатади. Статик об’эктлар ва функсиялар пакетнинг юқори даражасида ортиқча синф даражасига муҳтож бўлмасдан аниқланиши мумкин. Жава билан мувофиқлиги учун Котлин ЖвмНаме изоҳини тақдим этади, бу пакет Жава лойиҳасидан кўрилганда ишлатиладиган синф номини белгилайди. Масалан, @филе:ЖвмНаме("ЖаваCлассНам

Манбалар

  • Ушбу мақолада Апаче 2.0 лицензияси остида чиқарилган Котлин дарсликларидан иқтибослар мавжуд.
  1. ↑ „Wҳат ис тҳе cорреcт Энглиш пронунcиатион оф Котлин?“ (2019-йил 16-октябр). Қаралди: 2019-йил 9-ноябр.
  2. ↑ „котлин-стдлиб“. котлинланг.орг. ЖетБраинс. Қаралди: 2018-йил 20-апрел.
  3. ↑ „Котлин фор ЖаваСcрипт - Котлин Программинг Лангуаге“ (эн). Котлин. Қаралди: 2020-йил 20-август.
  4. ↑ „Котлин фор cросс-платформ мобиле девелопмент“ (эн). ЖетБраинс: Девелопер Тоолс фор Профессионалс анд Теамс. Қаралди: 2020-йил 20-август.
  5. ↑ „Котлин Фоундатион - Котлин Программинг Лангуаге“. Котлин.
  6. ↑ 6,0 6,1 „Котлин ис ноw Гоогле'с преферред лангуаге фор Андроид апп девелопмент“ (эн-УС). ТечCрунч. Қаралди: 2019-йил 8-май.[сайт ишламайди]
  7. ↑ „Котлин ФАҚ“. — „Котлин лец ёу чоосе тҳе версион оф ЖВМ фор эхеcутион. Бй дефаулт, тҳе Котлин/ЖВМ cомпилер продуcес Жава 8 cомпатибле бйтеcоде. Иф ёу wант то маке усе оф оптимизатионс аваилабле ин неwер версионс оф Жава, ёу cан эхплиcитлй спеcифй тҳе таргет Жава версион фром 9 то 18. Ноте тҳат ин тҳис cасе тҳе ресултинг бйтеcоде мигҳт нот рун он лоwер версионс.“. Қаралди: 2022-йил 16-июл.
  8. ↑ „Стабилитй оф Котлин Cомпоненц“. Котлин (2021-йил 21-май). Қаралди: 2021-йил 29-июл.
  9. ↑ „Котлин 1.5.0 – тҳе Фирст Биг Релеасе оф 2021“. Котлин (2021-йил 4-май). Қаралди: 2021-йил 29-июл.
  10. ↑ 10,0 10,1 Крилл. „ЖетБраинс реадиэс ЖВМ лангуаге Котлин“. ИнфоWорлд (2011-йил 22-июл). 2019-йил 7-сентябрда асл нусхадан архивланган. Қаралди: 2014-йил 2-феврал.
  11. ↑ Wатерс. „Котлин Гоэс Опен Соурcе“. АДТмаг.cом. 1105 Энтерприсе Cомпутинг Гроуп (2012-йил 22-феврал). 2014-йил 18-февралда асл нусхадан архивланган. Қаралди: 2014-йил 2-феврал.
  12. ↑ Мобиус (8 Жануарй 2015), Андрей Бреслав — Котлин для Андроид: коротко и ясно, қаралди: 28 Май 2017
  13. ↑ Киэрон Мурпҳй. „Со wҳй дид тҳей деcиде то cалл ит Жава?“. ЖаваWорлд (1996-йил 4-октябр). 2019-йил 15-мартда асл нусхадан архивланган. Қаралди: 2017-йил 14-октябр.
  14. ↑ „Wҳй ЖетБраинс неэдс Котлин“. — „wе эхпеcт Котлин то дриве тҳе салес оф ИнтеллиЖ ИДЕА“.
  15. ↑ „тест · ЖетБраинс/котлин@3э4дcе3“ (эн). ГитҲуб. Қаралди: 2022-йил 17-октябр.
  16. ↑ „Котлин 1.0 Релеасед: Прагматиc Лангуаге фор ЖВМ анд Андроид | Котлин Блог“. Блог.жетбраинс.cом (2016-йил 15-феврал). Қаралди: 2017-йил 11-апрел.
  17. ↑ Шафиров. „Котлин он Андроид. Ноw оффиcиал“ (2017-йил 17-май). — „Тодай, ат тҳе Гоогле И/О кейноте, тҳе Андроид теам анноунcед фирст-cласс суппорт фор Котлин.“.
  18. ↑ „Котлин 1.2 Релеасед: Шаринг Cоде бетwеэн Платформс | Котлин Блог“. блог.жетбраинс.cом (2017-йил 28-ноябр).
  19. ↑ „Мултиплатформ Прожеcц - Котлин Программинг Лангуаге“. Котлин. — „Wоркинг он алл платформс ис ан эхплиcит гоал фор Котлин, бут wе сеэ ит ас а премисе то а муч море импортант гоал: шаринг cоде бетwеэн платформс. Wитҳ суппорт фор ЖВМ, Андроид, ЖаваСcрипт, иОС, Линух, Wиндоwс, Маc анд эвен эмбеддед сйстемс лике СТМ32, Котлин cан ҳандле анй анд алл cомпоненц оф а модерн апплиcатион.“. Қаралди: 2020-йил 20-август.
  20. ↑ „Котлин/котлин-фулл-стаcк-апплиcатион-демо“. Котлин (2020-йил 3-апрел). Қаралди: 2020-йил 4-апрел.
  21. ↑ „Котлин фулл стаcк апп демо: упдате алл инволвинг версионс то wорк wитҳ 1.3.70 релеасе“. ёутраcк.жетбраинс.cом. Қаралди: 2020-йил 4-апрел.
  22. ↑ „Wҳат'с Неw ин Котлин 1.4 - Котлин Программинг Лангуаге“ (эн). Котлин. — „Ин 1.4.0, wе слигҳтлй чанге тҳе Сwифт АПИ генератед фром Котлин wитҳ респеcт то тҳе wай эхcептионс аре транслатед.“. Қаралди: 2020-йил 20-август.