В WeAreBrain мы уделяем много времени исследованиям и разработкам, и мы всегда стремимся исследовать новые языки программирования и проверять их гибкость и функциональность. Конечно, мы также любим знакомиться со старыми фаворитами, чтобы увидеть последние разработки. В течение прошлого года мы рассматривали функциональность Elixir, Javascript и Ruby, как некоторые из наших любимых, в то время как у нас также были некоторые из наших крутых умников, изучающих менее известные языки, такие как Kotlin, Crystal и Rust. Поэтому мы подумали, что составим краткий список языков программирования, которые, по нашему мнению, будут способствовать развитию.

Как всегда, цель каждого языка - обеспечить более быстрое и интеллектуальное программирование с меньшим количеством ошибок. Многие новые языки обещают, что это именно то, что вы получаете, вкладывая в них средства. Путем проб и ошибок мы поняли, что иногда это правда, а иногда нет. Поэтому, чтобы оценить качество языка, мы не рассматриваем этот знакомый эпитет «умнее и быстрее» как ключевые факторы, определяющие качество языка. Скорее, мы сосредотачиваемся на балансе между стабильностью и инновациями, потому что и то, и другое необходимо для создания новых потрясающих проектов.

Прежде чем мы перейдем к «списку», я хотел бы добавить к уравнению еще одну вещь, а именно автоматизацию. Это движущая сила во всем, что связано с технологиями, и это уже давно. Мы очень заинтересованы в языках, которые избавляют от монотонности программирования, чтобы наша команда могла делать действительно захватывающие вещи. Итак, программы, которые помогают нам достичь этого, находятся в верхней части нашего списка.

Javascript

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

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

Но именно это и делает его таким захватывающим. Несмотря на уровень критики, с которой JavaScript сталкивается каждый год, он по-прежнему остается одним из самых быстрорастущих языков программирования в мире. Кроме того, согласно данным сайта Indeed.com, JavaScript входит в тройку самых востребованных языков с точки зрения работодателя. Вдобавок к этому React определенно завоевал популярность за последние пару лет, и были предположения, что экосистема JS будет развиваться и будет иметь новые инструменты, библиотеки и фреймворки GOOD.

И последнее, но не менее важное - большое уважение к Microsoft, которая разработала и поддерживает еще один расширенный набор для JS: TypeScript. TypeScript позволил охватить гораздо большую аудиторию разработчиков, которые пришли с подходом ООП. Особенно приятно наконец создать стандартизованные интерфейсы API через TypeScript, который необходим для корпоративного сегмента, со строгой проверкой типов и сложными отношениями данных. Широко используемый в настоящее время в React, Angular 2/4 и Vue.js как клиентская технология, он, очевидно, также делает серверные приложения Node.js более понятными.

Основные моменты: React, Vuejs, прогрессивное веб-приложение, функциональное программирование, WebAssembly.

Котлин

Котлин тоже не новинка, на самом деле он существует уже около 7 лет. Однако недавно он достиг версии, готовой к производству. На данном этапе он не достиг такой же популярности, как Scala, Groovy и Clojure, но как язык JVM он определенно выделяется. Это действительно потрясающий язык, который теперь стал официальным языком разработки под Android. Его универсальность - основная причина, по которой он попал в этот список.

Особенности: Нулевой режим по умолчанию, первоклассное делегирование и полная совместимость с Java.

Java 8

Говоря о Java… несмотря на то, что последней поддерживаемой версией является Java 13, Java 8 довольно часто является первым языком, который изучает большинство разработчиков, благодаря его роли lingua franca для AP Computer Science. Но мы рады Java 8, потому что она отличается, новые функции предлагают функциональные методы, которые позволяют разработчику разблокировать параллелизм в своем коде. Старая Java по-прежнему работает, поэтому нет необходимости переключаться. Но, как говорится в названии этой статьи, Java 8 заслуживает второго взгляда.

Особенности: лямбда-выражения и параллельный код.

Рубин

Ruby по-прежнему входит в этот список, потому что он прост в использовании и понимании. Он был вокруг квартала пару раз и знает, что делает. Кроме того, это довольно мощный язык с большой универсальностью. На наш взгляд, Ruby on Rails - одна из лучших сред веб-приложений, которая включает в себя все необходимое для создания веб-приложений и API на базе баз данных в соответствии с шаблоном модель-представление-контроллер (MVC).

Основные моменты: Приложение Rails в WAR, Ruby 3x3, Ruby JIT

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

Написано совместно с Павлом Кожокаром, Владимиром Винниковым и Сергеем Труфановым.