Kotlin - актуалният избор за писане на Android приложения
![Kotlin - актуалният избор за писане на Android приложения](/Files/Publications/2017/10/android_19013545.png)
Kotlin e статично-типизиран програмен език, който върви на Java виртуална машина и може да бъде компилиран заедно с JavaScript source code или да използва компилатор с LLVM* структура. Името идва от о-в Котлин, финския залив, в близост до Кронщад.
Докато синтаксиса на Kotlin не е съвместим с Java, Kotlin e проектиран да взаимодейства с Java код и е зависим от Java кода в съществуващите Java Class Library, като например collections framework-a. Тази двойственост е целенасочено залегнала в разработката на Kotlin, като позволява на компаниите и отделните разработчици постепенна миграция от Java към Kotlin.
Синтаксис и семантика
При списъците на параметрите и декларациите на променливите Котлин разполага типа данни след името на променливата, отделен с двуеточие, подобно на Паскал. Подобно на езиците Scala и Groovy точката и запетаята са по избор в ролята си на декларация; в повечето случаи нов ред е достатъчен за компилатора да стигне до извода, че дадена декларация е приключила.
В допълнение към класовете и методите (които тук са наречени "member functions") на обектно-ориентираното програмиране, Kotlin поддържа и процедурно програмиране чрез употребата на функции. Подобно на C и С++ входната точка в Kotlin приложение е функцията, наречена "main". Поддържат се още Perl и Unix/Linux shell script-style вмъкване на низове, както и автоматичен извод на тип (т.нар. Type inference).
Kotlin прави разграничение между нулируеми и ненулируеми типове данни. Всички нулеруеми обекти трябва да бъдат декларирани с "?" наставка след името на типа. Операциите включващи нулируеми обекти са обект на специално внимание от страна на разработчика: null-check трябва да се осъществи преди да се използва стойността. За да облекчи действието Kotlin предлага т.нар. "null-safe" оператори.
Инструменти, които боравят с Kotlin
- IntelliJ IDEA има плъгин, който поддържа Kotlin, а след версия IntelliJ IDEA 15, Kotlin плъгина е включен в инсталационния файл на IDE-то;
- Създателите от Jet Brains също така са осигурили плъгин за Eclipse IDE;
- Поддържа се интеграция с общи Java build инструменти, като Apache Maven, Apache Ant и Gradle;
- И разбира се Android Studio.
Приложения
Основното приложение на Kotlin e разработка на Android и приложения за тази ОС. Известно време платформата беше основно на Java 7, в съчетание с някои съвременни добавки, станали достъпни чрез употребата на Retrolambda или Jack toolchain. В сравнение с това Kotlin предлага много подобрения за програмисти, като гореспоменатия null-pointer safety, extension functions и infix notation.
В допълнение на пълна съвместимост с Java, както и добра поддръжка откъм среда за разработка (гореспоменатото Android Studio), Kotlin е предназначен да подобри четимостта на кода и да даде лесен начин за удължаване на Android SDK класовете, както и да ускори процеса на разработка. Kotlin е обявен за официален език за разработка на Андроид на изложението Google I/O** 2017, като с това се превръща в третия напълно поддържан език под Андроид, след Java и C++.
---
*LLVM - Low level virtual machine - Виртуална машина от ниско ниво - Проект за компилираща инфраструктура, който представлява колекция от модуларни и преизползваеми компилаторни и toolchain технологии, предназначена за създаване на компилатор за frontend или backend.
**Google I/O - I/O - съкратено от Input/Output. Google I/O e ежегодно-провеждаща се конференция на разработчици, на която се предоставят новите постижения в областта на разработката на уеб, мобилни и развлекателни приложения.
Автор: Георги Кацаров