Мертвые и живые языки программирования: что изучать, а что обойти стороной?

0
15241

Языки программирования растут как на дрожжах, и все сложнее ответить на вопрос «А какой же язык для изучения выбрать мне?» Отвечаем статистикой.

Языки программирования и их будущее

Были опрошены разработчики C++, C#, Java, Swift/Objective-C, JavaScript, PHP и Python. Каждому из них задали по 3 вопроса:

  1. Хорош ли ваш язык в качестве первого изучаемого?
  2. Востребован ли он сейчас?
  3. Будут ли расти зарплаты и количество вакансий по выбранному направлению?

В статье собраны разные языки программирования и настолько же разношерстные ответы.

C# – Андрей Губский

Языки программирования

1. Разумеется, C# идеально подойдет новичкам. Это хорошо сбалансированный язык, который предусматривает лаконичные конструкции вначале и постепенное перемещение к более продвинутым инструментам.

Преимущества C#:

  • это C-подобный язык, который лаконичнее Pascal и местами напоминает Java;
  • C# строго типизированный, а потому изначально заложит хорошее понимание о типах данных;
  • он относится к .NET-языкам, которые работают в рамках CLR и не требуют отдельного выделения памяти.

2. C# широко используется в энтерпрайз-проектах и стартапах. В специалистах заинтересованы многие компании, ведь сферы применения широки. Язык подходит для разработки мобильных ПО, игр, облачных сервисов etc. Работу можно найти за 1-2 недели.

3. Microsoft продолжает работать с языками «Си» и в особенности занимается продвижением перспективного C#. Особых колебаний в области зарплат не будет, но это по-прежнему один из 10-ти самых высокооплачиваемых языков.

C++ – Ростислав Дзинько

Языки программирования

1. Если говорить именно о C++ как о первом языке, его можно посоветовать только в том случае, если нужно отбить всякое желание кодить в дальнейшем. Такие языки программирования становятся первыми для студентов и тех, кто посещает специализированные курсы. Но даже так лучше начать с чистого C, а только под конец переходить на C++. Своих студентов я мотивирую тем, что это uber-язык, после которого освоение других пойдет намного легче и быстрее.

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

3. В 80-х годах C++ был единственным популярным языком программирования. Со временем появились Java и C#, которые поглотили корпоративный сектор, а также Python, Ruby, PHP, занявшие web-сектор.

Сегодня C++ востребован в игровой индустрии, системном программном обеспечении и в серверных и мобильных приложениях, для которых свойственны повышенные требования к скорости и использованию системных ресурсов. Зарплаты сильно зависят от сфер применения языка. Например, специалисты VR/AR стоят дороже разработчиков интерфейсов ПО.

Java – Дмитрий Думанский

Java

1. Это идеальный язык для старта. Java-специалист прекрасно разбирается в тонкостях ООП и может решить большое количество задач благодаря гибкому инструментарию языка.

2. Интерес к Java тает из-за появления большого количества языков, с использованием которых можно быстрее реализовать «Hello, World!». Многие переходят на Go, Node.JS, Kotlin и Scala. Эти языки программирования богаты перспективами и активно обрастают библиотеками, поддержкой и новыми функциональными возможностями. Особенно хочется выделить Kotlin, ведь если Android-разработчики переключатся на этот язык, его популярность возрастет в разы.

Но если бы мне сейчас предложили перейти на какой-то из других языков, я бы выбрал Node.JS (сегодня JavaScript используется почти на всех проектах) или Go – язык, привлекательный за счет простоты.

Java-разработчики часто сталкиваются с отсутствием необходимых конструкций и некоторых функциональных возможностей. Они осведомлены о проблемах и могут рассказать, почему Java – не идеальный язык. Но Oracle не стоит на месте, вносит коррективы и со временем решит нынешние вопросы.

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

Swift и Objective-C – Дмитрий Скороход

Swift

1. Программирование под устройства Apple включает в себя разработку приложений под macOS, tvOS, iOS и watchOS. Для этого наиболее часто используются языки программирования Swift и Objective-C, поэтому в большинстве вакансий заявлены именно они, хотя для Apple можно использовать и другие языки. Новичкам советую начинать со Swift, так как это интуитивно понятный язык с хорошими перспективами. Он существует всего 3 года, но уже успел обогнать Objective-C, став основным используемым языком.

2. Спрос на программистов iOS и macOS стабильно высокий, ведь у устройств Apple большая и преданная аудитория. Кроме того, эти пользователи значительно чаще покупают мобильные приложения, чем пользователи других ОС.

Дорогая техника – это проходной барьер, который защищает Apple-разработчиков от многочисленных конкурентов. Именно поэтому зарплаты iOS-специалистов на 10-20% выше, чем у коллег по сфере деятельности, которые разрабатывают ПО под Android. Но начать можно и не имея устройства, а просто используя для работы виртуалку.

3. На Swift еще пишут новое, а Objective-C больше используется в поддержке старых проектов. Первый язык более перспективный, в то время как популярность второго падает. Я рекомендую изучать Swift, а Objective-C – по мере необходимости.

Хотя зарплаты специалистов Objective-C и превышают з/п коллег. Связано это с тем, что старые проекты дают больше денег, чем новые. Но разница незначительная – всего $100-200, поэтому это слабый аргумент против Swift.

JavaScript – Александр Литвиненко

JavaScript

1. JavaScript относится к легкодоступным языкам для старта в сфере веб-программирования. Но «бум» прошел, и нынешних фреймворков с головой хватает для полноценной реализации языковых возможностей, что также плюс для новичков. Начать можно с React, после чего перейти к изучению Vue и Angular. Почему React первый в списке? Это хороший шаблонизатор, соединяющий разношерстные библиотеки с широким функционалом.

2. На GitHub у React больше звезд, чем у Angular, а на сайте пакетного менеджера – больше скачиваний. По удобству React+Redux пока вне конкуренции. Да, у Angular есть своя ниша, которой можно прогнозировать продолжительное существование, но перспективы вряд ли сравнятся с React+Redux.

3. Рост популярности языка очевиден. На руку играет Node.JS. От мобильных ПО до редакторов кода – все это делается на Node. Вакансий очень много. Зарплата стабильно высокая.

PHP – Юрий Савка

PHP

1. Я скептически отношусь к статусу «первого языка». Операторы, циклы и функции есть везде. Важнейший шаг – это не первая программа, а первый проект, который будет делать что-то полезное, а в идеале – приносить доход.

PHP на первых порах может спугнуть количеством побочных технологий, которые придется осваивать (CSS, SQL, JavaScript), но при этом она привлекает набором готовых решений, таких как WordPress. Важно развиваться, а не оставаться на уровне вебмастера, урвав свой первый «кусок» заработка.

2. Вакансий валом, но качество проектов часто оставляет желать лучшего. Неплохо джунам, которые берутся за новые проекты или находят их на фрилансе, а также архитекторам, оперирующим общими концепциями ООП и системного дизайна. Посередине – студии веб-дизайна, древние CMS, интернет-магазины. Если все перетерпеть и наточить скиллы, начнутся золотые годы. Можно переключиться на Европу. Например, опытные PHP-специалисты востребованы в Германии.

3. Ruby/Rails, ASP.NET и Java-сервлети бесповоротно мертвы, а бэкэндовский JS остается узконаправленным развлечением для избранных, поэтому большинство сайтов пишется на PHP. Это единственный язык, который двигается в адекватном направлении.

Python – Илья Батозский

Python

1. Каждый разработчик будет говорить, что его язык самый подходящий. Но Python действительно лучше остальных подойдет для старта. Я основываюсь на опыте, так как долгое время проработал в школе и испытал разные языки программирования на начинающих. Python показывал лучшие результаты, и старшеклассники осваивали его быстрее чем JS или Pascal.

2. Python востребован, что подтверждают исследования на StackOverflow и GitHub, где он всегда в первых строчках рейтингов популярности. И популярность растет, а темпы этого роста уже очень долго не снижаются.

Поэтому трудоустройство – не проблема. Не могу сказать о всем рынке труда, но Python-специалисты однозначно востребованы.

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