Хочу всё знать. Язык Kotlin
В 2010 году группа разработчиков российского отделения JetBrains взялась за разработку языка, который был бы удобнее и типобезопаснее, чем Java, но не так сложен, как Scala. Название этому языку было дано в честь острова Котлин, расположенного в Финском заливе (по аналогии с Java, который также назван в честь острова).
Если вы посмотрите на любой современный обзор наиболее перспективных языков программирования, в том числе наш, вы непременно найдете там Kotlin. В чем суть этого языка, почему он так всем нравится, какие у него перспективы — об этом далее.
Синтаксис
Идея сделать язык, одинаково удобный, как для новичков, так и для опытных разработчиков напрямую выразилась в его синтаксисе. Как и любой современный аналог, Kotlin — предельно лаконичный, компактный и понятный. Огромное количество кода, которое приходилось раньше писать на Java теперь можно просто проигнорировать. Простой пример: использование точки с запятой для разделения операторов не является обязательным условием — компилятор теперь всё понимает самостоятельно, если просто перейти на новую строку. При объявлении переменных во многих случаях не обязательно указывать тип — он определится автоматически.
При этом надо сказать, что Kotlin в плане записи немного вернулся к стилю Pascal — здесь тоже наглядность главенствует над чёткостью конструкций. Немного подробнее об этом можно почитать в этой небольшой статье. В ней рассмотрены лишь базовые принципы построения языков Java и Kotlin, поэтому понятна она будет абсолютно всем.
Впрочем, небольшой кусочек кода всё же оставим:
fun main(args : Array<String>) {
val scope = "world"
println("Hello, $scope!")
}
Предельно простая запись, которая должна быть понятна любому, кто хотя бы год в школе или университете учил программирование.
Важно упомянуть, что Kotlin полностью совместим с Java. Именно поэтому на первых порах его рассматривали как простой синтаксический сахар, используя для комплексных задач, где просто хотелось сэкономить время и силы.
Преимущества
В общем-то все преимущества в сравнении с Java уже были названы, поэтому просто соберем их в одном месте:
-
Объем кода. Неиспользование ненужных архаичных кусков кода ускоряет процесс разработки и повышает читаемость;
-
Безопасность. Заложенные в синтаксис языка правила создания кода позволяют избегать мелких трудно отслеживаемых ошибок, которые возникают лишь в момент исполнения программы;
-
Совместимость в Java. Это удобно и с точки зрения обучения новому языку, и с точки зрения постепенного перевода ваших программных продуктов c Java на Kotlin. К примеру, именно так произошло с приложением Basecamp.
Недостатки
Как у языка, который был разработан на основе Java, у Kotlin по сравнению с ним есть два очевидных недостатка: скорость и проработанность. В первом случае все понятно: работая на JVM трудно обойти по быстродействию Java. Вторая проблема немного надуманная для столь молодого языка, ведь в официальном обороте он существует чуть больше года. Да, здесь существенно меньше инструментов и библиотек, чем на Java. Но, во-первых, пока это не критично, а во-вторых, в мире Java количество далеко не везде перешло в качество.
Kotlin же пока со своими главными задачами справляется, а полная совместимость с Java помогает закрыть глаза на указанные пробелы.
Перспективы
Несмотря на то, что разработка Kotlin началась в 2010 году, первая официальная версия увидела свет лишь в феврале 2016. С этого момента востребованность языка стремительно растет, в рейтинге TIOBE он за год ворвался в TOP-50, а в прошлом месяце на конференции Google I/O было объявлено об официальной поддержке Kotlin в системе разработки Android-приложений.
Учитывая высокую популярность IntelliJ IDEA среди разработчиков и стратегическую ставку компании на Kotlin, можно с уверенностью утверждать, что через 3-4 года мы увидим его среди полноправных конкурентов Java и Swift в области мобильной разработки. Кроме того, если создатели языка не разочаруются в своем продукте, наверняка Kotlin отправится всерьез захватывать и другие горизонты: веб, ИИ, интернет вещей, большие данные, десктопные приложения.
Если вас всерьёз заинтересовал этот язык, то обязательно загляните на его официальный сайт (русская версия) и испытайте все его преимущества на личном опыте. Спешите, пока это не стало мейнстримом.