Что такое Kotlin

и зачем нужен?

Kotlin — это лаконичный язык программирования, который создали в 2011 на замену «многословного» Java. Разработчики Kotlin сделали ставку на компактность кода, и он получился компактнее своего прототипа на 1/3. При этом Kotlin полностью совместим с Java, и запускается на его виртуальной машине: JVM. Это означает, что фреймворки и библиотеки Java можно использовать в Kotlin-приложениях.

Его разработчик — компания JetBrains, основанная российскими программистами. Поэтому язык носит имя острова Котлин, на котором расположен Кронштадт, по аналогии с Java (остров Ява). JetBrains является ведущим мировым производителем инструментов для разработки — IDE, таких как IntelliJ IDEA (Java, Kotlin) и PyCharm для Python. В 2019 Google официально признал Kotlin приоритетным языком в разработке приложений под Android.

Kotlin это что?

Если дать краткую характеристику, то Kotlin — это объектно-ориентированный язык со статической типизацией, как и Java. Это позволяет выявить много ошибок ещё на стадии компиляции, что даёт преимущество при разработке сложных и больших проектов.

Также IntelliJ IDEA и Android Studio поддерживают автоматическую конвертацию кода Java в Kotlin, правда, для небольших приложений.



Зачем нужен Kotlin


Разработчики задумывали его, как универсальный язык. В принципе Kotlin можно использовать везде, где работает Java. Но основные области применения — это мобильная разработка и бэкенд. Большинство вакансий от работодателей приходится на эти две сферы. Но Kotlin подходит и для написания десктопных программ, для Data Science, и даже для фронтенда, где господствует JavaScript. Kotlin может компилироваться в JavaScript.

В отличие от Java, на Kotlin можно создавать приложения не только для Android, но и для iOS, используя Kotlin Multiplatform Mobile (KMM).



4 отличия Kotlin от Java


1. Kotlin защищен от NullPointerException


Такие ошибки — причина частых сбоев приложений из Google Play. В отличие от Java, в Kotlin все переменные по умолчанию не нулевые, а присвоение или возврат null выявляется ещё на стадии компиляции. Для присвоения переменной значения null, в Kotlin помечают эту переменную как nullable.


2. Корутины


Наряду с механизмами многопоточности и асинхронности, существующими в Java, в Kotlin используют корутины (coroutines). С помощью них определяются приоритеты в работе приложения. Данные загружаются не последовательно: вначале приоритетные, а затем менее значимые, что сводит к минимуму время запуска приложения. При этом тратится мало ресурсов, а это как раз то, что требуется в мобильной разработке.


3. Функции-расширения


В Kotlin можно легко расширить класс для добавления в него новых параметров. Делается это при помощи специальных функций-расширений.


4. Скорость


Приложения на Java компилируются несколько быстрее, чем на Kotlin. Однако, если использовать инкрементальную компиляцию, когда собирается не весь проект, а только изменённые участки, то сборка произойдёт даже чуть быстрее.

Но на деле существует гораздо больше всяких фич, которые делают разработку на Kotlin проще, быстрее и безопаснее. Kotlin-код получается гораздо более читабельными и короткими, чем Java-код.

Отличие Kotlin от Java

Что касается данных Google по соотношению количества приложений, написанных на Java и Kotlin, то к ним нужно относиться осторожно. Это имеет отношение к многолетней тяжбе по поводу авторских прав между Oracle (правообладатель Java) и Google. Понятно, что Google заинтересован в переходе на Kotlin, а будущее Андроид-разработки полностью зависит от него. Но кто его знает, чем дело закончится? Может в дальнейшем Java будет «реабилитирован» и в глазах Google снова станет хорошим.

И теперь главный вопрос, надо ли переходить с Java на Kotlin? Однозначного ответа нет, Java сегодня развивается так же быстро, как и Kotlin. Видимо, эти языки будут сосуществовать ещё продолжительное время.



Зарплаты Kotlin-программистов


Программистов, которые выучили Kotlin, пока не так много, поэтому и зарплаты у них высокие, включая новичков. Это график зарплат по уровню квалификации:

График зарплат Kotlin-программистов по уровню квалификации

По данным Хабр Карьеры зарплаты Kotlin-программистов за последние четыре квартала демонстрировали рост даже выше, чем по другим языкам:

Рост зарплат Kotlin-программистов

Три четверти работодателей ищут разработчиков под Android, оставшаяся четверть вакансий — это в основном бэкенд-разработка.

Популярное

Полезное

Получить книгу

Мы здесь

Поделиться материалом с друзьями:

Вверх