Для новичков и не только: 6 языков программирования, востребованных в современной разработке

13 августа 2018, 17:00

Выбрать подходящий язык программирования — трудная задача для начинающего разработчика. Принять правильное решение обычно помогает статистика сообществ вроде Stack Overflow или GitHub, которые регулярно публикуют данные об их популярности. Издание TechRepublic приводит расширенный список из 6 языков, которые неизменно занимают первые строчки в обзорах 2018 года.

Читать далее

Иллюстрация: Cape Cod Web Design

1. JavaScript

Применение: JavaScript создавался как язык веб-сценариев. Сегодня он имеет множество сфер применения, начиная с серверов на Node.js и заканчивая устройствами интернета вещей в среде программирования Node-RED.

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

Профессии: веб-разработчик, full stack-разработчик, фронтенд-разработчик.

Пособия: официальное руководство от Mozilla.

Альтернативные языки: JavaScript оказал влияние на многие другие языки. Стремительно расширяется аудитория TypeScript, который с некоторой натяжкой может заменять JavaScript.

Онлайн-сообщества: Stack Overflow, а также сабреддиты Learn JavaScript и JavaScript.

2. Java

Применение: Java — важнейший язык для современных компаний. Уже более десяти лет на нём пишут серверное ПО для бизнеса. Кроме того, Java является основным языком разработки приложений под Android, игр и веб-приложений.

Из-за широкой распространённости языка Java-разработчики по-прежнему будут пользоваться высоким спросом. И хотя уже вышла 10-я версия языка, наиболее широко распространена версия Java 8.

Профессии: разработчик программного обеспечения, архитектор программного обеспечения, DevOps-инженер.

Пособия: официальное руководство от Oracle.

Альтернативные языки: Kotlin — официальный язык разработки на Android, который соединяет современные возможности языков со стопроцентной интероперабельностью Java. Его популярность также растёт ударными темпами.

Онлайн-сообщества: Stack Overflow и сабреддит Learn Java.

3. Python

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

Код на Python достаточно лаконичен и прост для понимания, он поддерживает множество парадигм программирования, имеет богатый набор встраиваемых библиотек. По мнению организации Python Software Foundation, популярность этого языка продолжит увеличиваться на фоне востребованности машинного обучения, а также благодаря доступности и практичности Python. Эти выводы поддерживают и составители августовского рейтинга TIOBE.

Профессии: дата-инженер, full stack-разработчик, инженер ПО.

Пособия: официальное руководство по изучению Python.

Альтернативные языки: R для анализа и обработки данных, Ruby для DevOps.

Онлайн-сообщества: сообщество python.org, Stack Overflow и сабреддит Learn Python.

4. РНР

Применение: немолодой язык, который часто подвергается критике, но активно используется в сети для обслуживания веб-страниц и приложений. Несмотря на безжалостную критику за несовершенство дизайна, РНР процветает уже не одно десятилетие и лежит в основе популярных CMS-систем вроде WordPress, а также применяется крупными сайтами, такими как Google и Facebook. Подобно Java, повсеместное использование РНР гарантирует ему стабильную популярность у разработчиков.

Профессии: веб-разработчик, WordPress/PHP-разработчик.

Пособия: PHP The Right Way.

Альтернативные языки: достойной заменой в плане поддержки сценариев на стороне сервера могут быть Python или JavaScript, запущенные в среде Node.js.

Онлайн-сообщества: Канал #phpc на irc.freenode.com, Stack Overflow и сабреддит Learn PHP.

5. C#

Применение: объектно-ориентированный язык программирования, разработанный Microsoft в 2000 году для платформы .NET Framework в противовес Java. Отличается хорошей документацией, относительно прост в изучении, имеет множество полезных библиотек. Часто используется при создании десктопных приложений для Windows, веб-приложений а в последнее время — и в мобильной разработке. Разнообразие сфер применения постоянно расширяется, а инструменты компании Xamarin позволяют использовать C# в написании приложения для Android, iOS и других мобильных платформ.

Профессии: full stack-разработчик, .NET-разработчик, веб-разработчик.

Пособия: курс от Microsoft по основам C#.

Альтернативные языки: С++ для приложений под Windows, JavaScript с фреймворком вроде React для веб-приложений.

Онлайн-сообщества: C-Sharp corner, Stack Overflow и сабреддиты CSharp и Learn CSharp.

6. C++

Применение: С++ — излюбленный язык создания игр и сложных приложений для бизнеса, главным образом благодаря эффективности и возможности тщательно контролировать использование памяти. Способность С++ добиться максимальной производительности от системы объясняет частый выбор его для низкоуровневого ПО на компьютерах (операционных систем и аппаратных драйверов). Минусом С++ является его сложность, из-за чего могут возникнуть проблемы во время его изучения.

Профессии: инженер-программист встраиваемых систем, инженер игровых движков, разработчик системного ПО.

Пособия: сайт Learn C++.

Альтернативные языки: Mozilla занимается развитием Rust и планирует сделать его таким же мощным, как С++, но с улучшенным управлением памятью.

Онлайн-сообщества: Stack Overflow и сабреддит C++.

Языки подобраны на основе исследований разработчиков Stack Overflow за 2018 год и рейтингов аналитической компании RedMonk.

Обсуждение