На текущий момент существует огромное количество языков и с каждым годом их становится все больше.
Как выбрать оптимальный (наш выбор) в этом разнообразии, постараемся ответить в этой статье.
Для современной разработки бэкенд-(серверной) части web используется один из популярных языков: php, python, java, ruby, c#, rust, go, javascript.
Для современной фронт-(клиентской) части web используется только javascript.
У каждого есть своя история, плюсы, минусы и почитатели, но здесь не об этом.
Тем не менее один из них выделяется сильнее - javascript и вот почему. Как минимум без его знания не получится написать клиентскую часть приложения.
Его преимущества:
универсальность:
Единый язык для фронт- и бэк- частей приложения (более подробно про фронт и бэк - здесь), который полностью поддерживается современными браузерами (и в отличии от технологии WebAssembly имеет полную их поддержку) и также как и java является языком общего назначения. Т.е. имеет широкий спектр реализации от применения в микроконтроллерах (https://www.espruino.com/) и приложений для смарт-гаджетов (TV и часов), до сложных распределенных систем enterprise-масштабов (после реализации Microsoft его строго типизированной версии - TypeScript).
высокая скорость обработки запросов:
Благодаря движку V8 (собственно который и разрабатывался для этого), реализованный корпорацией Google имеет высокую пропускную способность. Из-за чего может обрабатывать запросы большего количества клиентов в сравнении с другими языками.
быстрота реализация проектов и сильная поддержка:
Из-за своей простоты, огромной поддержки и развития сообществом. Язык реализует поддержку стандарта ECMAScript осуществляемую комитетом TC-39, куда входят такие IT-гиганты как Microsoft, Facebook, Google, Apple, IBM, Intel, Alibaba и прочие, но не менее известные компании. Как правило разработкой других языков занимаются отдельные компании и сообщества разработчиков.
популярность:
javascript входит в число самых популярных языков программирования среди разработчиков и последние года занимает лидирующие позиции по количеству использования.
Один из рейтингов языков digital-агенств используемых для разработки мобильных, корпоративных, десктопных и веб-приложений, предоставлен "Тэглайн" (первое и самое крупное русскоязычное аналитическое агентство) - рейтинг и ежегодно публикуемые статистические данные на GitHub (крупнейший веб-сервис для хостинга IT-проектов) - здесь, Stack Overflow (основная система вопросов и ответов о программировании) - здесь.
Ни для кого не секрет, что основным языком разработки приложений на Android является kotlin, на iOS - swift. То есть раньше приходилось писать разные приложения под каждую из платформ.
Однако в последнее время появились технологии, реализующие принцип "один код везде" (на обе платформы сразу): Xamarin (Microsoft), Flutter (Google), React Native (Facebook), Weex (Apache), NativeScript (Telerik), Cordova (Apache).
Для javascript для реализации нативных приложений это:
Для примера, это четыре популярных приложения (на React Native):
Есть еще гибридная реализация, где веб-приложения трансформируются в мобильное, с единой кодовой базой через javascript - Cordova, Capacitor.
Для разработки десктопных приложений в основном используются следующие языки: java, c#, c++, c, swift, javascript.
Для разработки десктопных приложений на javascript используется Electrone (подробнее).
Для примера, это два популярных приложения реализованных на нем:
javascript - хороший, если не лучший на сегодняшний день, инструмент в инструментарии у разработчика. И при правильном использовании позволяет за рекордное время реализовывать приложения на любых платформах, в том числе и enterprise-уровня.
Тем не менее, стоит сказать, использование одного языка в крупных проектах не ограничивается (из-за своей архитектуры, сильных и слабых сторон самих языков), но для начального этапа роста и реализации бизнес логики проекта в большинстве случаев его будет более чем достаточно. Особенно для стартап сферы, где ценятся простота, скорость реализации и быстрый рост.