Островной диалект

Островной диалект
17 мая Google объявил, что создаваемый JetBrains язык программирования Kotlin будет включен в официальный инструмент разработки Android — Android Studio 3.0. Мы попросили прокомментировать это важное событие наших коллег Android-разработчиков, а поскольку 338 человек из команды DataArt работает в Петербурге, мы не упускаем возможность рассказать, что Kotlin — не только язык программирования, но и остров, на котором расположен чудесный город Кронштадт, входящий в состав Петербурга.

Котлин — остров в Финском заливе, в 30 км от г. Санкт-Петербурга, площадь 16 кв. км 60°00′45″ с. ш. 29°44′01″ в. д.


Kotlin — статически типизированный язык программирования для платформ JVM, Android и JavaScript. Разрабатывается компанией JetBrains с 2010 года, публично представлен в июле 2011. В мае 2017 года компания Google сообщила, что инструменты языка Kotlin, основанные на JetBrains IDE, будут по стандарту включены в Android Studio 3.0 — официальный инструмент разработки для ОС Android.

«Пока чувствуется нехватка разработчиков, имеющих достаточный опыт в Kotlin для применения его в коммерческих проектах»

Константин Марс, Senior Developer, организатор GDG в Днепре:

Поддержка Kotlin в Android Studio была одной из самых долгожданных новостей на I/O. Язык существует уже больше шести лет, а с появлением официальной версии 1.0 он стал поддерживаемым и стабильным. До этого было несколько попыток принести функциональное программирование на Android: Scaloid, RxJava, поддержка Java 8. Но, безусловно, Kotlin — самая многообещающая перемена на сегодня. Особенно хорошо, что это язык, разработанный JetBrains, компанией-автором Idea IDE, которая лежит в основе Android Studio. Таким образом, поддержка языка в Android Studio обещает быть очень хорошей. Тем не менее, пока чувствуется определенная нехватка разработчиков, имеющих достаточный опыт в Kotlin для применения его в коммерческих проектах, поэтому мы ждем больше курсов и тренингов для разработчиков в ближайшем времени

«Код на Kotlin становится лаконичнее»

Кирилл Варивода, Developer:

Я работаю месяц над проектом, который пишется на Kotlin, и пока не испытывал с ним проблем. Очень удобно, что в проекте может быть и Java-код, и Kotlin — можно спокойно использовать и тот, и тот код. Код на Kotlin становится лаконичнее. Теперь не нужны бесконечные if-else с проверками объектов на Null. Радует, что Android Studio предлагает сконвертировать вставленный Java код в Kotlin автоматически, что ускоряет процесс обучения, т. к. видно наглядно, как меняется синтаксис, — в отличие от Java.

#spb #krondshtadt #ussr

A post shared by Andrei (@ozerov.an) on Nov 15, 2016 at 3:57am PST

«Возможность переписывать проект, используя одновременно Java и Kotlin, делает переход легким и безболезненным»

Евгений Галошин, Senior Developer:

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

Возможность переписывать проект, используя одновременно Java и Kotlin, делает переход легким и безболезненным. Нужен ли этот переход, каждый разработчик решит для сам, но наличие выбора вселяет оптимизм. В целом, вся ситуация схожа с eclipse и Android Studio, когда Google прислушался и сделал официальной средой разработки выбор сообщества разработчиков.

Причал

A post shared by Alexander Serov (@alexander_serov) on Aug 18, 2015 at 1:32pm PDT

«Kotlin заставляет думать иначе — этого часто не хватает синьорным программистам»

Виктор Якунин, Senior Android Developer:

Kotlin — современный язык, который очень быстро набирает популярность. У разработчика есть возможность использовать все наследие Java, а не переписывать с нуля (мы можем вызвать Java из Kotlin и наоборот).

На Android есть известная проблема с поддержкой старых версий ОС — мы должны использовать Java 6, чтобы дать возможность использовать приложение на всех устройствах. Эту проблему легко решает Kotlin: мы просто можем использовать лямбды, DSL, extension functions, всю мощь современного языка. Меньше boilerplate-кода, как показала практика, количество строк уменьшается в два раза для эквивалентного кода, а если писать, учитывая специфику и возможности языка, получаем еще меньше.

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

Есть ли будущее? JetBrains обещают захватить вселенную. Даже если по какой-то причине проект закроют, опыт использования современного языка, который похож на C#, Scala и много других, будет хорошим вложением. Много известных личностей вроде Jack Wharton (square/retrofit, Butterknife, etc) перешли на Kotlin, количество вакансий, сообществ, докладов, специфических решений/библиотек (Coroutines, Anko) растет (https://github.com/trending).

Fort Alexander, also Fort Alexander I, or Plague Fort (Russian: Форт Александр Первый Fort Aleksandr Perviy or Russian: Чумной форт Chumnoy fort, English: "Plague fort") is a naval fortress on an artificial island in the Gulf of Finland near St. Petersburg and Kronstadt. In 1899–1917, the fort housed a research laboratory on plague and other bacterial diseases. Форт «Импера́тор Алекса́ндр I» («Чумный») — одно из долговременных оборонительных сооружений, входящих в систему обороны Кронштадта. Расположен на небольшом искусственном островке к югу от острова Котлин. С 1899 по 1917 год использовался как лаборатория по исследованию чумы. На июль 2007 года находился в федеральной собственности. #stpetersburg #djiphantom4 #dji #phantom4 @djiglobal @djieurope @dronebois @droneoftheday

A post shared by Maxim (@pixeljacks) on Jul 17, 2016 at 4:09pm PDT

«Благодаря такому многообразию синтаксического сахара, писать код становится гораздо приятнее и быстрее»

Александр Сергиенко, Senior Developer:

Я предполагаю, что Kotlin будет набирать популярность. Не использовать его можно по объективным причинам — он увеличивает размер получаемого конечного файла (apk), но это не самое большое разочарование в разработке под Android. Я считаю, что это прекрасный язык, который представляет собой смесь Swift/Scala/Python. В отличие от Scala, он легко осваивается и не содержит громоздких конструкций для работы с optional-объектами. Вообще синтаксис Swift и Kotlin становится очень похож, поэтому, если кто-то думает в сторону развития профессиональных качеств, изучив Kotlin, он может легче начать программировать на Swift под iOS.

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

Вообще, если взгянуть на основной синтаксис, получается, что только ленивый не станет его изучать и применять в проекте, ведь, благодаря такому многообразию синтаксического сахара, писать код становится гораздо приятнее и быстрее. Анонс Google, что можно официально писать на Kotlin, окажется аргументом для нерадивых заказчиков, которые сомневались, будет ли этот язык жить спустя время (теперь можно не бояться — гигант Google одобрил его применение).

#vsco #vscocam #krondshtadt #bridge #autumn #крондштадт #сухойдок #мост

A post shared by Наталья Величко (@nvelichko) on Sep 5, 2016 at 3:41am PDT

«Кода реально получается в три раза меньше»

Сергей Чистяков, Senior Developer:

Официальное признание Google — огромный шаг вперед для популяризации и узнаваемости языка. Очень здорово, что Google прислушивается ко мнению сообщества. Kotlin, безусловно, хорош и становится все популярнее и популярнее среди Android-разработчиков. Я сначала скептически относился к нему, но попробовав в Android-части нашего проекта, проникся логичностью и лаконичностью. Оказалось, очень просто перейти на Kotlin, если и на Java команда старается поддерживать качество кода, следовать best-practices из Effective Java, подсказкам IDE, findbugs и т. д. У JetBrains — колоссальный опыт анализа кода, и логично, что они применили его в новом языке. Кода реально получается в три раза меньше, он легче читается, а значит, код-ревью и поддержка занимают меньше времени. Остается только пожелать удачи JetBrains, вы молодцы!