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 поможет нам продолжить этот рост.

Если вы нашли опечатку, пожалуйста, сообщите нам. Выделите текст с ошибкой и нажмите появившуюся кнопку.
Подписывайтесь на «Бумагу» там, где вам удобно
Все тексты
Читайте еще
Пройдите тест и узнайте, насколько хорошо вы можете защитить компьютер от взломов и вирусов
«Я просто нашел место, где забыли обновить программу»: как петербуржец заработал на ошибке в Facebook 40 тысяч долларов
Шеф-редактор TechCrunch — о том, как на Западе относятся к российским технологиям и почему нам не превзойти Кремниевую долину
Четвертая волна коронавируса
Международный культурный форум в Петербурге отменен из-за неблагоприятной ситуации с коронавирусом
Минздрав попросил пожилых медиков, самоизолировавшихся в начале пандемии, вакцинироваться и выйти на работу
«Фонтанка»: в Петербурге хотят ввести QR-коды для некоторых мероприятий, но не для общепита. Окончательное решение еще не принято
Собираетесь в Выборг, Новгород или Псков? Сверьтесь с картинкой — мы отметили регионы рядом с Петербургом, где ввели систему QR-кодов
Математики СПбГУ посчитали, какой может быть заболеваемость COVID-19 в России в ноябре
Как меняется Петербург
На Охтинском мысу создадут общественные пространства — какими они будут? Показываем прогулочную тропу, кафе и зимний сад
Смольный обещает до 2024-го ввести беспилотный транспорт, оплату проезда лицом и агрегатор культурных событий. Вот что может (но не точно) появиться в Петербурге
В Калининском районе появится 3 тысячи контейнеров для раздельного сбора мусора. Их установят в 2022 году
Власти готовят документы для приватизации дома Брюллова на Кадетской линии. Его могут выставить на продажу
С 2022 года платная парковка на улице Рубинштейна станет круглосуточной
Научпоп
Рецепторы, глобальное потепление и экономика труда. Главное о научных исследованиях нобелевских лауреатов — 2021
Космический туризм, астрономия и облачные технологии. Присоединяйтесь к нашему фестивалю Science Bar Hopping в Москве!
Петербургские археологи нашли геоглиф в виде быка в Тыве. Рассказываем, что это и почему находку называют уникальной
Откуда берутся слухи про чипирование, как фейки о бесплатных лекарствах рекламируют БАДы и можно ли зарабатывать на фактчекинге в России? Рассказывает сооснователь Fakecheck
Мы проводим научный фестиваль «Кампус» — офлайн! Приходите на лекции о том, как устроен интернет 💻 И поспешите, билетов не очень много
Вакцинация от коронавируса
Что известно об обязательной вакцинации в Петербурге. Кто должен привиться, какие санкции ждут отказавшихся и возможно ли введение QR-кодов
Российская сторона тормозит взаимное признание COVID-паспортов, заявил посол Евросоюза. Они позволят россиянам въезжать в страны ЕС без карантина
Блогера из Петербурга будут судить за видео с фейками о коронавирусе. Он утверждал, что применение вакцины приводит к смерти. Обновлено
Заболеваемость COVID-19 растет. Как обезопасить себя? Очень простая инструкция
Центр Гамалеи разрабатывает единую вакцину против гриппа и коронавируса. Ее начнут испытывать в конце 2022 года
Коллеги «Бумаги»
Кто реально победил на выборах в Госдуму? В чем не правы противники «Умного голосования»? Как были устроены фальсификации?
Как протест против ввоза мусора из Москвы пробудил в ярославцах интерес к экологическим проблемам
Как «Независимая ассоциация врачей» отговаривает россиян прививаться
Гид по пригородам Петербурга
Прогулки с видом на реку, 100-летняя ГЭС и краеведческий музей в доме инженера — приезжайте в Волхов
В Петяярви — маршрут для долгой бодрой прогулки и идеальные места для пикников. Осмотрите заброшенную финскую ГЭС с водопадом и лесные озера
В Гатчине — не только дворец и парки. Осмотрите замок мальтийских рыцарей, деревянную дачу с башней и старинную слободу, где жили егеря
В Орехове — самая высокая точка Карельского перешейка, заказник с дикими зверьми и озера. Летом в полях цветет рапс и пасутся лошади
В Лебяжьем — «кладбище поездов», столетние дома и военные форты. Прогуляйтесь по местам писателя Бианки и останьтесь до вечера, чтобы увидеть закат над заливом
Подкасты «Бумаги»
Как спасти планету от мусора? Придумываем варианты во время мозгового штурма: от геймификации до новой экономики
«Нахрен все эти деньги, открываем бар!». Каково запустить бизнес своей мечты — и закрыть его
Вместе со школы❤️ Выпуск про первые отношения и неловкие романы
«Твой умный кореш»: слушайте подкаст «Бумаги» — с историями про безумный автостоп, жизнь с пятью детьми и отказ от алкоголя
Как создать идеального робота и не породить корпорацию зла? Придумываем правила для искусственного интеллекта в первом видеовыпуске подкаста Science Bar Hopping!
К сожалению, мы не поддерживаем Internet Explorer. Читайте наши материалы с помощью других браузеров, например, Mozilla Firefox или Chrome.