22 мая 2017

Как петербуржцы создали язык программирования Kotlin и почему его теперь используют Android и Google

Язык программирования Kotlin, созданный петербургской компанией JetBrains, стал официальным языком для разработки на Android.

Почему Kotlin назвали в честь острова в Финском заливе, как и когда язык стал популярен среди разработчиков мобильных приложений, почему им удобно пользоваться и зачем он изначально понадобился? Маркетинг-менеджер Kotlin Роман Белов рассказал «Бумаге», как в Петербурге создавали язык, признанный Google.

Фото из архива Романа Белова

Как и когда появился язык программирования Kotlin?

Мы начали разрабатывать Kotlin в 2010 году. К тому времени компании JetBrains было уже десять лет и основной продукт компании — JetBrains IntelliJ IDEA, полностью написанный на Java, — был уже очень большого размера. Стало понятно, что во многом Java нас не устраивает. Было несколько альтернативных языков программирования, но оказалось, что ни один из них не соответствует тем требованиям, которые мы выдвигаем к языку, на который хотели бы перейти.

Была и вторая причина. Когда в одном месте собирается очень много людей с большим экспертным опытом в области языков программирования, часто получается, что рождается новый язык. Так оно и получилось. Во-первых, была осознанная и серьезная потребность, а во-вторых, мы могли ее удовлетворить.

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

Почему Kotlin называется именно так?

В тот момент, когда придумывалось название, на JVM (Java Virtual Machine — прим. «Бумаги») существовали еще языки, названные в честь островов: Java, Ceylon. И мы подумали: какой у нас есть остров рядом? Котлин. И это название прижилось. Тут нет какой-то традиции или правила, но так случилось, какой-то более глубокой мысли за этим нет.

В чем особенности языка?

Наверное, самое удачное слово, которое подходит к языку Kotlin, — это прагматичность. Языки бывают разные: некоторые выходят из академической среды, другие созданы для конкретных платформ. Мы изначально были нацелены на практичный язык для максимально широкой аудитории. Он должен был быть демократичным, то есть без заумных вещей. Бывают ситуации, когда программист знает все тонкости языка и благодаря этому пишет хитрый код, — и в этот код никто из джуниор-программистов не может лезть. Нам нужен язык, который одинаково хорош как для начинающих программистов, так и для продвинутых.

Внутри компании у нас также полная демократия: каждый программист сам решает, на каком языке писать, на Java или на Kotlin, и далеко не все переходят на Kotlin. Для меня как для маркетинг-менеджера языка JetBrains — это маленький мир. Когда в нашей большой компании все перейдут на Kotlin, тогда, наверное, и во всем мире программисты перейдут на него. Но, действительно, процент использования Kotlin в компании неизменно растет.

Чем же Kotlin так хорош? В первую очередь разработчики любят Kotlin за его краткость и выразительность. Это свойственно всем новым языкам. Раньше людей это не очень смущало, потом размер программ стал больше — люди поняли, что пишут очень много совершенно бессмысленных кусков кода только потому, что от них это требует синтаксис языка программирования.

Вторая причина в том, что он полностью совместим с Java и позволяет постепенно мигрировать с Java-приложения на Kotlin-приложение. Например, приложение Basecamp в течение полугода полностью мигрировало с Java на Kotlin.

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

Как Kotlin заметили разработчики приложений?

В JetBrains мы не занимаемся Android-разработкой и изначально никто не думал, что Kotlin будет языком, который так удачно подойдет для целей Android-разработчиков. Но в какой-то момент оказалось, что Android застрял на Java 6 и очень многие новые фичи Java на Android недоступны. Тогда прогрессивные разработчики обратили внимание на Kotlin.

Мы поняли, что Kotlin может быть очень полезен для Android, и стали дорабатывать фичи, которые помогают Android-разработчикам, учитывали их потребности при разработке дизайна языка.

Год назад у нас произошло довольно большое событие: система сборки Gradle, с помощью которой собираются все приложения для Android, объявила о переходе на Kotlin.

В каком-то смысле история с Kotlin на Android — совершенно сказочная и хрестоматийная: мы просто делали язык программирования, и он очень нравился разработчикам. Это история про движение снизу вверх, а не наоборот. Разработчики давно просили Google поддержать Kotlin. И Google к ним прислушался.

С анонсом от Google формально для нас ничего не меняется: мы продолжаем разрабатывать язык и нацелены на разные платформы. Естественно, мы предвкушаем особое внимание к языку со стороны Android-разработчиков: оно будет, в частности, выражено в сообщениях об ошибках, в запросах на поддержку той или иной функциональности, и, естественно, мы будем всё это обрабатывать. Но в целом, конечно, продолжим двигаться по намеченному пути.

Кто и зачем использует язык Kotlin?

В компании мы начали применять Kotlin года с 2012-го, но официальный релиз языка был 17 февраля 2016 года. До этого времени конструкции языка активно менялись и поддерживать код на Kotlin было достаточно проблематично. Надо понимать, что развитие языков программирования требует большого внимания к обратной совместимости. И когда мы заявили о релизе, взяли на себя обязательство по обратной совместимости: по тому, что новый код будет совместим на бинарном уровне со старым. И мы эти обязательства выполняем.

Сейчас язык Kotlin в своих приложениях используют такие российские компании, как Avito и «Рокет Банк». За прошлый год Kotlin опробовали 160 тысяч программистов. До сегодняшнего дня Kotlin показывал экспоненциальный рост по числу программистов, и, думаю, объявление Google поможет нам продолжить этот рост.

Если вы нашли опечатку, пожалуйста, сообщите нам. Выделите текст с ошибкой и нажмите появившуюся кнопку.
Подписывайтесь на «Бумагу» там, где вам удобно
Все тексты
Что известно про «Тучков буян»
«Это будет большой полноценный парк». В Смольном опровергли информацию о создании сквера вместо парка «Тучков буян»
Петербургские активисты просят создать парки на участках, которые отвели под строительство Судебного квартала
В Петербурге построят и Судебный квартал, и «Тучков буян», заявил Песков
Парк «Тучков буян» все-таки появится в Петербурге, говорят в Смольном. Не тот, что обещали, — зато с фонтаном
Как застраивалась территория Судебного квартала — «Тучкова буяна» в 2014–2021 годах. Таймлапс
Мусорная реформа в Петербурге
В одном из дворов в Купчине — нашествие крыс. Местные жители связывают это с мусорным коллапсом
Мусорный оператор Петербурга заявил, что отходы вовремя вывозят из 96 % баков. Горожане не согласны
На запах от полигона «Северная Самарка», который обещали закрыть власти, пожаловались жители. Росприроднадзор требует его проверить
Петербуржцы сшили платья из мусора, которым переполнены баки, — и устроили дефиле. Фото и рассказ организатора
В Петербурге осталось четыре района, где плохо вывозят мусор, заявил региональный оператор. Какие?
QR-коды в Петербурге
Привитые иностранными вакцинами смогут получить российские сертификаты. Документы рассчитывают подготовить к февралю
Противники QR-кодов запустили хештег #ктакимнеходим. Они травят петербургские заведения, которые проверяют сертификаты
В России отложили рассмотрение законопроекта о QR-кодах из-за неопределенности с COVID-19
В Петербурге перенесли рассмотрение иска горожан против QR-кодов. В суд поступило еще несколько заявлений
В списке бойкотирующих QR-коды уже более 115 заведений Петербурга. В него попали кафе Yuyi и Türk o’clock
Уборка снега и льда
В «дворник-шеринге» в Петербурге участвуют более 350 человек, в том числе подростки. Они работают во время сильных снегопадов
Петербуржцы показали обледенелый вход в детскую поликлинику. Чиновники говорят, что он посыпан реагентами — но их не видно
Это пятиметровая какашка из снега на Марсовом поле. Фото арт-объекта
«Шрам на лице еще долго будет заметен». Четыре петербурженки рассказывают, как этой зимой пострадали из-за наледи
В Колпине школьница поскользнулась на льду и травмировала спину, сообщает «Фонтанка»
Главное об «омикроне» в городе
В Петербурге выявили максимум заболевших коронавирусом за всю пандемию — 3958
«Нужно мобилизовать все силы». Беглов рассказал, как город готовят к росту заболеваемости
Новая волна из-за «омикрона» многих пугает. Исследователь статистики рассказывает, что сейчас происходит в Петербурге
«Волна идет на подъем». В Петербурге за неделю на 20 % выросло число госпитализаций
В Москве могут ввести новые ограничения из-за «омикрона». При каких условиях это произойдет?
Коллеги «Бумаги»
Обвинительные клоны
Непрофессиональное заболевание
Как читать новости о ковиде?
Подкасты «Бумаги»
Как верить новостям, когда вокруг столько фейков? В этом подкасте говорим с фактчекером и создателем ИА «Панорама»
Как мы провели 2021-й? 🎄 В новогоднем подкасте рассказываем про тревоги, научный фестиваль в поезде и эспрессо-квас
Как бороться с преступностью в эпоху киберпанка? В этом подкасте слушайте про хакеров, чипы и ДНК-компьютеры
Ольга Кравцова — об ужасах съемного жилья, дачном строительстве и квартире мечты🏠
Как изучение генов помогает бороться с редкими заболеваниями и создавать вакцины? Слушайте в подкасте
Научпоп
Как выращивают мясо в пробирке и сколько это стоит? Рассказывает участник фестиваля Science Bar Hopping
В Петербурге любят тушить или жарить? Ученые назвали пищевые привычки жителей города и Ленобласти
Все пишут про «новогодний парад планет». Его можно увидеть из Петербурга?
Как звучит вакцина от COVID-19 и модуль МКС? Послушайте альбом «Звуки науки»
Вы знали, что в Ленинграде жил ученый, расшифровавший письменность древних майя? О нем сняла фильм «Редакция»
К сожалению, мы не поддерживаем Internet Explorer. Читайте наши материалы с помощью других браузеров, например, Mozilla Firefox или Chrome.