Добавить новость
Июль 2015 Август 2015
Сентябрь 2015
Октябрь 2015 Ноябрь 2015
Декабрь 2015
Январь 2016 Февраль 2016 Март 2016 Апрель 2016 Май 2016
Июнь 2016
Июль 2016 Август 2016 Сентябрь 2016 Октябрь 2016
Ноябрь 2016
Декабрь 2016
Январь 2017
Февраль 2017
Март 2017 Апрель 2017 Май 2017 Июнь 2017
Июль 2017
Август 2017
Сентябрь 2017
Октябрь 2017
Ноябрь 2017
Декабрь 2017
Январь 2018
Февраль 2018
Март 2018
Апрель 2018
Май 2018
Июнь 2018
Июль 2018
Август 2018
Сентябрь 2018
Октябрь 2018
Ноябрь 2018
Декабрь 2018 Январь 2019 Февраль 2019 Март 2019 Апрель 2019 Май 2019 Июнь 2019 Июль 2019 Август 2019 Сентябрь 2019 Октябрь 2019 Ноябрь 2019 Декабрь 2019 Январь 2020 Февраль 2020 Март 2020 Апрель 2020 Май 2020 Июнь 2020 Июль 2020 Август 2020 Сентябрь 2020 Октябрь 2020 Ноябрь 2020 Декабрь 2020 Январь 2021 Февраль 2021 Март 2021 Апрель 2021 Май 2021 Июнь 2021 Июль 2021 Август 2021 Сентябрь 2021 Октябрь 2021 Ноябрь 2021 Декабрь 2021 Январь 2022 Февраль 2022 Март 2022 Апрель 2022 Май 2022 Июнь 2022 Июль 2022 Август 2022 Сентябрь 2022 Октябрь 2022 Ноябрь 2022 Декабрь 2022 Январь 2023 Февраль 2023 Март 2023 Апрель 2023 Май 2023 Июнь 2023 Июль 2023 Август 2023 Сентябрь 2023 Октябрь 2023 Ноябрь 2023 Декабрь 2023 Январь 2024 Февраль 2024 Март 2024 Апрель 2024 Май 2024 Июнь 2024 Июль 2024 Август 2024 Сентябрь 2024 Октябрь 2024 Ноябрь 2024 Декабрь 2024 Январь 2025 Февраль 2025 Март 2025 Апрель 2025 Май 2025 Июнь 2025 Июль 2025 Август 2025 Сентябрь 2025 Октябрь 2025 Ноябрь 2025 Декабрь 2025 Январь 2026 Февраль 2026 Март 2026 Апрель 2026 Май 2026 Июнь 2026 Июль 2026 Август 2026 Сентябрь 2026
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30

Поиск города

Ничего не найдено

Kotlin vs Java: история конкуренции в мобильной разработке

0 55

2010 год. Компьютеры уже прочно вошли в повседневную жизнь, а Apple представила четвертое поколение iPhone, но смартфоны все еще являются дорогой и редкой новинкой. Главными брендами умных носимых гаджетов остаются Nokia и BlackBerry. Зачастую эти устройства имеют не только сенсорный экран, но и полноценную выдвижную клавиатуру. Обычно они называются карманными персональными компьютерами (КПК) или коммуникаторами.

Концепция магазина приложений также продолжает оставаться новинкой: Android и iOS обзавелись ими в 2008 году, Nokia и BlackBerry — в 2009-м. До этого пользователи были вынуждены либо обходиться предустановленными приложениями, либо скачивать их со сторонних сайтов, чему некоторые производители активно препятствовали.

Однако и смартфоны, и приложения активно набирают популярность: в 2010 году пользователи совершили 8,2 млрд установок приложений на свои устройства, а создатели ПО получили 5,2 млрд долларов дохода (для сравнения, в 2024 году количество установок приложений составило 136 млрд, а доход от них — 935 млрд долларов). Кстати, самым популярным приложением 2010 года стала игра Angry Birds.

В такой обстановке в санкт-петербургском офисе компании JetBrains начинается разработка нового языка программирования. Поначалу он назывался Jet, но затем получил новое имя — Kotlin.

Откуда появилось название Kotlin? Оно происходит от острова Котлин, расположенного в Финском заливе рядом с Санкт-Петербургом. Именно на Котлине стоит город Кронштадт. Название предложил один из авторов Kotlin, программист Дмитрий Жемеров. Как утверждал руководитель разработки Андрей Бреслав, назвать язык в честь острова решили по аналогии с Java, — ведь этот язык назван в честь Явы (вернее, в честь сорта кофе, которым славится этот остров).


Создать новый язык предложил Дмитрий Жемеров. В тот период JetBrains занималась прежде всего созданием инструментов для разработки, в первую очередь среды разработки IntelliJ IDEA для программирования на Java. Жемеров счел, что компания способна не только работать с существующими решениями, но и с нуля сделать свой язык программирования. Руководителем разработки Kotlin стал Андрей Бреслав, который поначалу скептически отнесся к этой идее.

Поначалу у меня сложилось впечатление, что люди сошли с ума.

Андрей Бреслав — о своей реакции на идею создания Kotlin

Для чего было в принципе создавать новый язык программирования? Бреслав считал, что к 2010 году язык Java с одной стороны стал использоваться практически монопольно, а с другой — сильно замедлился в развитии. Причем у этой медлительности была уважительная причина: Java — это большая экосистема, в которой нужно поддерживать обратную совместимость, то есть следить, чтобы старые решения продолжали работать после обновления языка. При таком подходе добавлять в старый язык новые идеи технически очень сложно. Именно поэтому Бреслав утверждал, что языки программирования не развиваются эволюционно. Здесь было не обойтись без качественного скачка.

Kotlin не был ни первой, ни единственной попыткой поколебать авторитет Java и при этом работать в рамках самой виртуальной машины Java. Среди его конкурентов — такие языки, как JRuby, Groovy, Clojure, Scala, Fantom и Gosu. Однако сотрудников JetBrains не устраивал ни один из существующих вариантов; такого же мнения придерживались многие программисты в компаниях по всему миру.

Несмотря на изначальный скепсис, Бреслав быстро проникся новой идеей — по его словам, это произошло во время первого же обсуждения, которое длилось около шести часов. Решение о начале разработки не было спонтанным — на тот момент JetBrains уже больше десяти лет занималась интегрированными средами разработки и была всемирно известным игроком на этом рынке. За это время удалось собрать сильную команду специалистов и накопить необходимый опыт.

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


Разработка Kotlin началась осенью 2010 года, через год JetBrains публично анонсировала новый язык. Однако первый релиз состоялся только 15 февраля 2016 года. Почему же работа над языком заняла столько времени?

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

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

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

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


KotlinJava
Возраст15 лет30 лет
Сообщество и материалыНебольшое сообщество. Меньше материалов, чем у Java, но все они сравнительно новые и простые для использованияБольшое разностороннее сообщество. Много материалов для учебы и работы, готовых решений
Сложность кодаЛаконичный и простой в написании код. Специальные инструменты автоматизируют часть задач (создание классов, оператор switch)Громоздкий, сложный код. Имеет несколько фичей, которых нет в Kotlin (тернарный оператор, проверяемые исключения)
БезопасностьВстроенная защита от многих распространенных ошибокЗащиты нет, ошибки непросто обнаружить, особенно начинающему разработчику
ПоддержкаОфициальный язык ОС AndroidПоддерживается в Android

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

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


Еще в феврале 2012 года разработчики Kotlin выложили исходный код в открытый доступ. До официального релиза четыре года спустя языком пользовались более тысячи человек ежедневно. Релиз Kotlin 1.0 привлек более 160 тыс. программистов. Однако приближалось событие, которое сделало язык по-настоящему известным.

18 мая 2017 года на ежегодной конференции Google I/O компания объявила, что Kotlin будет включен в Android Studio — инструмент разработки для операционной системы Android. Он стал третьим языком после Java и C++, который поддерживается Google.

В чем заключалась важность этого объявления помимо самого факта признания от такого титана, как Google? До этого программисты могли бояться, что язык перестанет поддерживаться и обновляться, когда JetBrains потеряет к нему интерес. Такое вполне могло произойти, ведь компания изначально рассматривала Kotlin как некоммерческий проект. Теперь же появилась гарантия, что в жизнеспособности языка заинтересованы не только его создатели, но и гигантская межнациональная корпорация. 

Когда со сцены прозвучали слова о поддержке Kotlin, шеститысячный зал зааплодировал так, что стало понятно, что это большое дело не только для нас, разработчиков языка, но и для пользователей.

Андрей Бреслав — о поддержке Kotlin со стороны Google

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

JetBrains не занимается мобильной разработкой, поэтому изначально не предполагалось, что Kotlin будет языком для Android-разработчиков. Однако проблемы Java, которые вызвали к жизни Kotlin, были ощутимы и здесь. Создатели языка не стали отворачиваться от новой сферы — и вскоре программисты начали использовать его в работе над Android-приложениями.

То, что именно Android-разработчики попросили Google официально поддержать Kotlin, — яркая иллюстрация рекламного подхода JetBrains. Компания считает, что ее продукты должны распространяться исключительно благодаря собственным достоинствам. Разработчики, которым нравится язык, рассказывают о нем коллегам, которые пробуют его, — и цикл повторяется.

Сразу после объявления Google о поддержке Kotlin его аудитория выросла вдвое. А на Google I/O 2019 году компания заявила, что Kotlin стал приоритетным в разработке под Android. Однако это отнюдь не означает, что язык подходит только для мобильной разработки: он широко используется для создания серверных приложений и фронтенда, применяется в обработке больших данных и физическом моделировании.


За прошедшие годы вокруг Kotlin сформировалось большое сообщество. Регулярно проводятся конференции KotlinConf — первая из них прошла еще в 2017 году. Создана Kotlin Foundation, задача которой — поддерживать, продвигать и развивать язык.

Сегодня Kotlin лежит в основе многих всем известных сервисов в диапазоне от McDonald’s и «Озона» до Slack и Reddit. Google даже публикует истории успеха от создателей приложений, использующих Kotlin, — вот, например, история о переходе Duolingo.

Оценить популярность языка можно и по его положению в международных рейтингах. В рейтинге PYPL PopularitY of Programming Language за февраль 2025 года Kotlin занимает 13 место; в рейтинге RedMonk за июнь 2024 года — 14 место. В ежегодном опросе разработчиков от Stack Overflow за 2024 год Kotlin стоит на 15 месте, им пользуются 9,4 % опрошенных программистов. Медианная зарплата разработчика на Kotlin — больше 65 тыс. долларов.

Популярность Kotlin вовсе не означает его незыблемости. Его появление подстегнуло Java обновить и улучшить свои характеристики. Многое из того, что было только в Kotlin, теперь есть и в Java. Произошла и обратная ситуация: из-за широкого использования Kotlin он больше не может радикально меняться, ему приходится поддерживать старый код в рабочем состоянии.

Ушедший из JetBrains в 2020 году Андрей Бреслав считает, что каждый язык программирования — это инструмент, который имеет свою нишу. У Kotlin эта ниша — большая, а значит, есть куда расти.

Обложка: downloaded from Freepik.

The post Kotlin vs Java: история конкуренции в мобильной разработке appeared first on Хайтек.





Все города России от А до Я

Загрузка...

Moscow.media

Читайте также


Загрузка...
Ria.city
Rss.plus


Новости последнего часа со всей страны в непрерывном режиме 24/7 — здесь и сейчас с возможностью самостоятельной быстрой публикации интересных "живых" материалов из Вашего города и региона. Все новости, как они есть — честно, оперативно, без купюр.




Кронштадт на Russian.city


News-Life — паблик новостей в календарном формате на основе технологичной новостной информационно-поисковой системы с элементами искусственного интеллекта, тематического отбора и возможностью мгновенной публикации авторского контента в режиме Free Public. News-Life — ваши новости сегодня и сейчас. Опубликовать свою новость в любом городе и регионе можно мгновенно — здесь.
© News-Life — оперативные новости с мест событий по всей России (ежеминутное обновление, авторский контент, мгновенная публикация) с архивом и поиском по городам и регионам при помощи современных инженерных решений и алгоритмов от NL, с использованием технологических элементов самообучающегося "искусственного интеллекта" при информационной ресурсной поддержке международной веб-группы 103news.com в партнёрстве с сайтом SportsWeek.org и проектами: "Love", News24, Ru24.pro, Russia24.pro и др.