От Golang до Ballerina: новые языки программирования, которые стоит изучать в 2022 году

Список языков программирования пополняется каждый год — одни разработки выходят под брендом техкорпораций, другие создаются энтузиастами в экспериментальных целях. За последние 10 лет по-настоящему «выстрелили» Swift, Kotlin, Go, Rust и TypeScript, но потенциал есть и у других новичков. Составили гид по новым языкам программирования, а заодно вместе с экспертом разобрались, зачем вообще их изучать. 

Содержание

Зачем изучать новые языки программирования

В мире насчитывается более 700 языков программирования, и список постоянно пополняется. При этом большинство ИТ-команд в крупных компаниях и стартапах использует несколько языков и фреймворков одновременно. Разработчики тоже все чаще становятся билингвами и мультилингвами и осваивают от 2 до 5 языков, в том числе тестируют новые технологии. Зачем это нужно:

  1. Новые инструменты и фреймворки прокачивают скиллы и помогают по-новому взглянуть на тривиальные задачи. Даже если вы не будете применять новые языки в работе, их знание поможет находить нестандартные решения в кодинге.
  2. Есть шанс поймать волну и стать востребованным специалистом до того, как язык станет мейнстримом. Пока остальные будут осваивать базу, вы уже выйдете на продвинутый уровень.
  3. При работе над сложным проектом вам будет проще подобрать нужный язык и фреймворк. Понимая специфику разных языков, вы легко определите, какой инструмент эффективнее решит задачу.

Познакомиться с популярными и не очень языками в демо-режиме можно на сайте Learn X in Y minutes — это проект обновляется и дополняется коммьюнити разработчиков.

Игорь Челединов, Lead Software Engineer в EPAM. Эксперт в Drupal, PHP, Go. В основном пишет на Go и Rust. 
Я изучаю новые языки для собственного развития. Это позволяет держать руку на пульсе, а мозг в напряжении. «Выстрелит» конкретный язык или нет — это вопрос спорный. Я смотрю на это под другим углом: иногда полезно освоить и «хайповое» направление, даже если вскоре о нем забудут. Было немало случаев, когда наблюдался скачок спроса на непопулярные языки. Так, в 2020 году в США выросло число вакансий для программистов, владеющих довольно устаревшим Fortran. Другой пример — Ruby: несколько лет назад этот язык был у всех на слуху, потом его популярность спала, но язык успел занять свою нишу, поэтому инженеры по-прежнему востребованы, а на рынке достаточно вакансий. Сейчас могу отметить еще Zig и Nim — они довольно интересны для изучения. За любым непопулярным языком стоит идея, которая чаще всего отличается от привычных нам. Осваивая новый язык, вы расширяете кругозор и развиваете техническое мышление. Знание специфики языков поможет оптимально выстроить архитектуру проекта и выбрать подходящий инструмент.   

Golang (Go) (2009)

Go (Golang) занимает первую строчку в рейтинге языков программирования, которые хотят изучить как действующие разработчики, так и новички. Его часто называют «швейцарским ножом» в сфере разработки: Go довольно простой и универсальный, а использовать его можно для разных задач — от создания API до DevOps-инструментов. А еще он пользуется спросом у крупных компаний, которые работают с большими данными. Поэтому владение Go регулярно входит в топ самых высокооплачиваемых навыков. 

По теме
Зачем дата-сайентисту SQL и где его можно изучить
Зачем дата-сайентисту SQL и где его  можно изучить

Курсы по Go:

Rust (2010)

Язык Rust соединяет в себе сразу несколько преимуществ — по мощи и производительности он не уступает C++, но при этом по безопасности памяти он превосходит многих конкурентов. Еще один плюс — большое коммьюнити разработчиков, которые постоянно выпускают новые инструменты и дополнения. Поддержку Rust выражают и технологические гиганты — так, в число соучредителей Rust Foundation вошли Facebook, Amazon Web Services, Google, Huawei, Microsoft и Mozilla — кстати, именно сотрудник Mozilla Грэйдон Хор в 2006 году инициировал работу над новым языком, который впоследствии стала поддерживать и сама компания.

Игорь Челединов, Lead Software Engineer в EPAM. В основном пишет на Go и Rust.
Мне наиболее интересным всегда казался Rust. Раньше его мало кто использовал, поскольку язык считался нестабильным. Но за последний год многое изменилось: Rust перешел из Mozilla в отдельный фонд и получил инвестиции, это стало большим толчком в развитии языка. Теперь он стабилен и удобен, а главное, помогает избежать ошибок, которые возможны в С/С++, и не допускает утечек памяти. Это важно, например, для разработки Embedded/IoT продуктов. Кто купит часы или температурный датчик, которые придется перезагружать раз в сутки? Мне как практику любопытно следить за новостями о включении Rust в ядро Linux в качестве второго языка. Уже идет обсуждение второго патча, а значит, коммьюнити, компании и индустрия в целом заинтересованы в Rust. Если 42% серверов интернета уже работают на Linux и туда войдет этот язык, то Rust начнет набирать популярность с невообразимой скоростью. В EPAM проектов с Rust становится все больше, и я как раз занимаюсь развитием практики по этому направлению. 

Курсы по теме:

Kotlin (2011)

Kotlin — язык программирования, разработанный компанией JetBrains, который довольно быстро набрал популярность и встал в один ряд с Java. Его широко используют в мобильной разработке — именно Kotlin применяли при создании приложений Trello, Evernote и Coursera для Android. А Google в 2019 году назвала Kotlin приоритетным языком программирования. Основные преимущества — это лаконичность и безопасность. По многим параметрам он превосходит Java, а также считается более простым языком по сравнению с главным конкурентом Scala.

Курсы по теме:

Jobs-бот найдет работу: подключайте бота в Telegram и получайте подходящие предложения

Red (2011)

Red задумывался как универсальный язык для full-stack разработки, который не будет зависеть от других инструментов и тулчейнов. Ближайший собрат Red — это REBOL, запущенный в 1997 году. В отличие от многих аналогов, Red позволяет писать и высоко-, и низкоуровневый код быстро и эффективно. При этом он обладает довольно простым, «человечным» синтаксисом. «Красный» язык пока не получил широкую популярность — многим кажется, что он «подозрительно хорош», а его сторонников называют «маленькой программистской сектой». С Red стоит поэкспериментировать, чтобы лучше проследить преемственность языков программирования и проверить, может ли разработка быть настолько универсальной, как говорят создатели. Будущее языка на рынке пока под вопросом — судя по последним постам в блоге, развитие языка продвигается медленно: у создателей уходит много времени на разработку довольно простых функций, а грандиозные планы по захвату full-stack индустрии пока откладываются.

Ресурсы по теме:

Dart (Flutter) (2011)

Объектно-ориентированный, высокоуровневый язык Dart был разработан Google как альтернатива JavaScript. Он легко компилируется в JS или Java для Android, а из очевидных преимуществ Dart выделяют минимальное количество ошибок времени компиляции и мощный встроенный редактор. Сфера применения этого языка — разработка веб-приложений, мобильного ПО и IoT-устройств. Для создания мобильных и веб-приложений на Dart у Google есть специальный продукт — фреймворк и сет средств разработки Flutter. 

Курсы по теме:

Elm (2011)

Функциональный язык, который подходит для создания сложных пользовательских интерфейсов, отличается хорошей скоростью и компилируется в JavaScript. Среди собратьев он выгодно выделяется отсутствием runtime exceptions и ограниченной системой типов (благодаря этому не возникает проблем с недопустимыми типами данных). Еще один большой плюс Elm — компилятор, выдающий подробные сообщения об ошибках и варианты их исправления.  Обычно Elm используют для создания веб-сервисов, поэтому его чаще всего применяют frontend-разработчики. 

Ресурсы по теме:

Julia (2012)

Высокоуровневый и высокопроизводительный язык был разработан специально для научных исследований и аналитики. Его уже использует более 1500 университетов, а Альянс по климатическому моделированию (CliMA) выбрал Julia в качестве основного языка. В сфере статистических и математических вычислений Julia не уступает R и Matlab, но при этом он проще в изучении и работе. Из плюсов языка также отмечают быструю компиляцию кода, высокопроизводительное параллельное выполнение, обширную математическую библиотеку и поддержку облачных вычислений. Создатель Python Гвидо ван Россум считает Julia нишевым языком, который, тем не менее, по оптимизации кода превосходит аналоги. 

Курсы по теме:

Elixir (2012)

Функциональный, динамический, компилируемый язык общего назначения работает на виртуальной машине Erlang, и это дает ему несколько преимуществ. Главные плюсы Elixir — это отказоустойчивость, возможность метапрограммирования, многозадачность и высокая производительность. Его используют как финтех-компании, так и e-commerce площадки, а также соцсети, например, Pinterest и Discord. Решения на базе Elixir легко масштабировать, при этом сам язык довольно простой. За свою недолгую историю язык успел обзавестись несколькими фреймворками, поэтому его уже можно применять для full-stack разработки.

Ресурсы по теме:

TypeScript (2012)

В 2010-е Microsoft хотела создать альтернативу JavaScript — так появился TypeScript, улучшенная и дополненная версия JS, на которую сегодня равняются многие разработчики языков. Например, создатели Python периодически подсматривают функции у TypeScript. А многие компании использует его в работе — так, Google Analytics и Google Cloud Platform частично базируются на TS. 

TypeScript — это язык-надстройка с открытым исходным кодом. Поэтому количество дополнительных фреймворков и инструментов для него постоянно растет. К плюсам также можно отнести статическую типизацию, которая выгодно отличает TypeScript от JavaScript. Еще один аргумент в его пользу — удобство и функциональность. Благодаря этому TS обошел Python в рейтинге самых любимых языков среди программистов от StackOverflow.

Курсы по теме:

Crystal (2014)

Быстрый, как C, удобный, как Ruby, но более гибкий, чем JavaScript — так характеризуют Crystal создатели языка. Его используют и для мелких enterprise-продуктов, и для блокчейн-проектов, и для гейм-разработки. Еще один плюс — растущее коммьюнити, которое верит, что в перспективе Crystal может полностью заменить Ruby. Эту точку зрения подтверждает и все большее число инструментов, совместимых с Crystal. Например, фреймворк Lucky и Kemal, а также новый язык программирования Mint, созданный специально для одностраничных приложений.

Ресурсы по теме:

Swift (2014)

Изначально Apple создавала компилируемый язык Swift для разработчиков на iOS и macOS, но постепенно его стали применять и при работе с другим ОС — в том числе с Android. Более того, программисты могут создавать свои версии языка и в целом экспериментировать с его возможностями. Например, его все чаще используют для разработки игр. У Swift немало общего с C и C++, а также Objective-C. В дополнение ко всему вышеперечисленному язык быстрый, безопасный, простой в использовании, но при этом востребованный.

По теме
Как правильно усваивать техническую литературу: лайфхаки, курсы и книга
Как правильно усваивать техническую литературу: лайфхаки курсы и книга

Курсы по теме: 

ReasonML (2016)

Этот объектно-функциональный язык появился на свет из желания разработчиков Facebook придумать более простой, быстрый и безопасный вариант JavaScript, так что его синтаксис очень похож на JS. Формально ReasonML — это расширение синтаксиса функционального языка OCaml и набор инструментов для него, поэтому он предполагает использование обеих экосистем: и JavaScrip, и OCaml. Из плюсов языка часто отмечают его иммутабельность, строгую систему типов и возможность достаточно простой интеграции с JS. Кроме того, ReasonML хорошо подходит для разработки React-приложений.

Курс по теме:

Ballerina (2017)

Сравнительно новый язык программирования, созданный компанией WSO2 для работы в облаке. Ballerina представляет собой статичный типизированный язык общего назначения. Его синтаксис достаточно простой и основывается на сочетании Go, Java, JavaScript и Python. Особенно интересным и перспективным для изучения Ballerina делает кроссплатформенность и направленность на интеграцию: специальные модули обеспечивают легкое взаимодействие различных сервисов, что упрощает работу программисту.

Курс по теме:

Microsoft Power Fx (2021)

Один из самых молодых языков программирования, официально представленный всего несколько месяцев назад, был создан Microsoft для работы на платформе Power Platform и основан на синтаксисе функций Excel. В основе этого функционального декларативного языка общего назначения лежит концепция low-code. Работать с Microsoft Power Fx сможет даже человек с минимальным знанием кодинга — и это одно из главных преимуществ языка. 

Курс по теме:

Какой язык программирования выбрать новичку 

Новички обычно начинают с Python, Java, C, C# или Ruby, но можно выбрать для старта более новые языки программирования — например, Go или Rust.

Игорь Челединов, Lead Software Engineer в EPAM. Эксперт в Drupal, PHP, Go. В основном пишет на Go и Rust.
Если вы только начинаете, то совершенно неважно, какой язык осваивать первым. Главное, определить направление: frontend, backend, мобильная разработка, интернет вещей или что-то еще. Так вы сузите список языков для выбора. Если анализировать мейнстримные направления, то еще долго будет популярным TypeScript — он уже становится стандартом в веб-разработке, к тому же его пытаются адаптировать под embedded-устройства. Swift тоже будет на волне, поскольку пока это один из немногих инструментов разработки под устройства компании Apple.  Определившись со сферой, изучите рынок. Нужно понимать, какие компании используют определенный язык разработки и сколько в него инвестируют. Например, в Dart (Flutter) и Golang активно инвестирует Google. В Rust — Google, Microsoft, AWS и Facebook. В TypeScript много вкладывает Microsoft, а в Swift — Apple. В Kotlin инвестирует JetBrains. Как видите, в основном это гиганты индустрии. Обратите внимание на продукты, написанные на этих языках, чтобы понять будут ли продолжаться инвестиции в развитие языка в будущем.  И еще один момент — выбирать и изучать языки проще с единомышленниками. Например, можно присоединиться к сообществу. В Беларуси действует коммьюнити по frontend, Python и многим другим направлениям — Golang, PHP, Java. А в русскоязычном коммьюнити разработки игр на Rust уже полторы тысячи участников. Хорошим стартом в данный момент могут быть TypeScript или Dart. Новичку они дадут возможность попробовать свои силы почти в любом направлении. Для новичков в backend подойдет Golang — он простой, с низким порогом входа, что позволяет быстро перейти от обучения к написанию кода. В мобильной разработке есть два основных направления: для Android лучше выбрать Java либо Dart, для iOS — Swift. Новички, кому по душе frontend, могут начинать с TypeScript. А вот Erlang и Elixir очень специфические языки. Первый обычно использовался там, где требуется одновременно обработать большое количество соединений, например для стриминговых серверов. Elixir основывается на Erlang, и в данный момент в enterprise его практически нет. Впрочем, в нишевых языках нет ничего плохого. Язык программирования — это в первую очередь инструмент в руках инженера, и не всегда это должен быть «швейцарский нож». Инженер, который хорошо владеет азами (базовыми алгоритмами и структурами данных), может легко освоить любой новый язык. Можно стать высококлассным узким специалистом в одной области, а можно знать несколько языков и видеть, как вещи работают на стыке технологий. Чем больше у тебя в руках правильных инструментов, тем шире твой взгляд и тем более качественный и интересный продукт ты можешь создать.

Материал может содержать партнерские ссылки. Это не отражается на стоимости сервисов или товаров. Партнеры не влияют на наши рекомендации и содержание текста. 


article widget img
«‎‎Главная ошибка собеса — подгонять ответы»‎. Рекрутеры рассказали о найме в IT
Откуда берутся IT-рекрутеры, с какими трудностями они сталкиваются в попытках закрыть позиции и какие ошибки сами совершают на интервью — полезно знать перед тем, как искать работу.
Телеграм-канал про Образо­вание, карьеру и жизнь в IT
Телеграм-канал про Образо­вание, карьеру и жизнь в IT

Читайте по теме

Войти в IT
Войти в IT
13

Войти в IT

Как прийти в айти, задержаться там надолго и не попасть на галеру
nerd head nerd letter

Мир содрогнулся, когда узнал, что читают разработчики по ночам...

Ничего криминального — только полезная еженедельная рассылка от Bubble. Тренды в айти, лайфхаки и советы экспертов.

Подписывайся!

Ты — котик! Проверяй почту
Нам нужен настоящий адрес эл. почты
Спецпредложения
Курсы со скидками для пользователей Bubble
Выбрать курс
Освоить за выходные
Экспресс-курсы программирования
Выбрать курс
Баг пофиксил
Курсы для QA-инженеров
Выбрать курс
Звездочка к резюме
Курсы по карьерному росту
Выбрать курс
Реклама на Bubble
Реклама на Bubble
Подписывайся на Bubble в соцсетях
Подписывайся на BUBBLE в социальных сетях
Телеграм-канал про Образование, карьеру и жизнь в IT
Только полезный контент и ничего лишнего.