Обучение

Зачем изучать PHP: рейтинг, перспективы, сферы применения

В этой статье поговорим о PHP. Узнаем о перспективах и популярности этого языка, рассмотрим сферу применения, уровень зарплат и другие вопросы. Комментарии известных специалистов помогут развеять сомнения о целесообразности изучения PHP.

Краткая теория: что такое PHP и где он применяется

PHP (от англ. Hypertext Preprocessor) — язык программирования, который изначально создавался для разработки веб-приложений, но эволюционировал в язык общего назначения.

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

PHP входит в число языков с динамической типизацией. Это значит, что тип данных определяется не при объявлении переменной, а при присваивании значения. Подробнее о типизации можно узнать в курсе «Введение в программирование».

PHP — интерпретируемый язык. Написанные на нём программы интерпретируются в момент обращения с помощью специальных программ. Интерпретируемые языки не зависят от платформы, но уступают компилируемым языкам в скорости исполнения. Дополнительную информацию об интерпретируемых и компилируемых языках смотрите в курсе «Введение в программирование», ссылка выше.

Область применения PHP

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

Справка: сначала аббревиатура PHP обозначала Personal Home Page. Это отражает основное назначение языка — создание веб-страниц.

На PHP написаны популярные системы управления контентом (CMS), например, WordPress, Joomla!, Drupal. На одном только WordPress’е работает около трети от всех сайтов в интернете. Это подтверждает актуальность и популярность PHP. На этом языке написаны и популярные фреймворки для создания сайтов, например, Laravel, Yii2, Symfony. Наконец, такие масштабные и популярные проекты, как Facebook и «ВКонтакте», тоже созданы на PHP.

Промежуточный итог: PHP — интерпретируемый язык с динамической типизацией. Применяется преимущественно для разработки веб-приложений. На этом языке написаны популярные движки для сайтов и фреймворки.

Популярность и рейтинг PHP

Популярность и востребованность языка прямо влияет на перспективы трудоустройства специалиста. Чтобы оценить популярность PHP, воспользуйтесь специализированными рейтингами, изучите количество вакансий в своём городе или регионе.

Согласно индексу TIOBE, в июне 2019 года PHP входит в десятку самых популярных языков программирования. Этот язык занимает восьмое место, опережая Swift, Ruby, Objective-C.

рейтинг PHP

Справка: индекс TIOBE рассчитывается по количеству поисковых запросов с названием языка. То есть он отражает интерес пользователей интернета к конкретным языкам программирования.

В ежегодном рейтинге GitHub PHP занимает четвёртое место. По частоте использования на GitHub этот язык уступает только JavaScript, Java и Python.

Справка: рейтинг GitHub Octoverse учитывает частоту применения языков пользователями GitHub. То есть он отражает востребованность конкретного языка в сообществе разработчиков.

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

Видео Кирилла Мокевнина

Что будет с популярностью PHP в краткосрочной и долгосрочной перспективе

Достоверного ответа на этот вопрос не знает никто, поэтому придется довольствоваться предположениями и рассуждениями. В качестве гарантии востребованности этого языка можно рассматривать то, что на нём работает львиная доля сайтов.

Смотрите сами: по данным W3Tech, в июне 2019 года 60 % из всех сайтов на движках работают на WordPress. Доля Joomla! и Drupal составляет 5,1 и 3,3 % соответственно. Эти CMS написаны на PHP.

Важно: суммарная рыночная доля трёх самых популярных движков составляет 70 %. К ней можно прибавить менее популярные CMS, написанные на PHP, а также сайты на фреймворках, например, Laravel или Yii2.

Системы управления контентом развиваются, работающие на них сайты массово не закроются. Поэтому востребованность PHP в обозримой перспективе будет высокой.

Рыночная доля (популярность) CMS по данным W3Tech

Промежуточный вывод: PHP входит в число самых востребованных языков программирования. Большая часть популярных CMS написана на этом языке. В регионах PHP — один из языков, которые обеспечивают быстрых вход в разработку.

Зарплата PHP-программиста: сколько платят

Уровень заработка PHP-разработчика зависит от региона, квалификации специалиста, режима трудоустройства (удалёнка или офис, штат или фриланс) и других факторов. Поэтому для определения уровня зарплат в вашем регионе придётся изучать информацию самостоятельно.

Например, по данным компании NewHR, в июне 2019 года средняя зарплата PHP-программиста уровня middle в Москве составила 160–180 тыс. рублей. Senior’ы зарабатывают в среднем 180–240 тыс. рублей. Зарплата team lead’а составляет от 240 тыс. рублей.

По данным сервиса «Мой круг», медианная зарплата PHP-разработчика в конце 2018 года составляла от 30 до 160 тыс. рублей.

Самостоятельно изучить рынок можно с помощью порталов трудоустройства типа hh.ru. Например, по запросу «PHP-программист» в Казани на hh.ru в конце июня 2019 года есть около 100 вакансий с зарплатной вилкой от 30 тыс. рублей до 3,5 тыс. долларов.

Вакансии разработчиков по выбранному региону

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

Сложно ли изучать PHP

Объективного ответа на этот вопрос нет, так как сложность относится к субъективным понятиям. Тем не менее PHP имеет репутацию языка с низким порогом вхождения. В данном случае речь идёт как об особенностях самого языка, так и о доступности информации: в интернете очень много литературы, платных и бесплатных курсов и упражнений по PHP. Подробнее об этом смотрите ниже в комментариях экспертов.

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

Тезис по итогам раздела: PHP имеет репутацию языка с низким порогом вхождения. Но новичкам надо сразу фокусироваться на изучении программирования, а не синтаксиса языков.

Перспективы PHP: мнения экспертов

Мы попросили известных в PHP-сообществе специалистов поделиться своими взглядами на перспективы языка и актуальность его изучения. Эксперты отвечали на следующие вопросы:

  • По вашему опыту, почему стоит изучать PHP?
  • Какие перспективы у этого языка программирования по сравнению с другими языками?
  • Будет ли он востребован в будущем?
  • Каковы перспективы PHP-разработчика на рынке труда?
  • Почему новичку стоит обратить внимание на этот язык?

С ответами можно ознакомиться ниже.

Евгений Пуха: перспективы у PHP интересные

Евгений Пуха

PHP – довольно хороший вариант для изучения как для новичков в сфере IT, так и для тех, кто работает с другими языками. Синтаксис языка входит в группу C-подобных, а это даёт возможность быстрее понять логику в коде приложений на Java, C#, C++ и так далее. Те же Python и Golang выглядят непривычно, но для тех, кто хочет изучить больше языков — это не преграда.

Если говорить о плюсах PHP, на котором мы делаем большинство проектов, стоит отнести:

  • низкий порог вхождения;
  • удобные и проверенные инструменты разработки;
  • огромное сообщество;
  • не менее огромное количество инструкций, готовых решений (CMS, фреймворки, плагины и библиотеки);
  • нетребовательность к рабочему окружению.

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

Перспективы у PHP также довольно интересные. С версии 5.3 язык начал очень активно развиваться и приобретать выразительные свойства (пространства имён, примеси, генераторы, опциональный тайп-хинтинг и другое), возможность работы в асинхронном режиме, а в будущих версиях ожидается JIT, FFI, поддержка предзагрузки, полноценная асинхронность.

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

Евгений Пуха, руководитель отдела PHP-разработки AGIMA.

Дмитрий Елисеев: PHP делает всего одну работу, но делает её идеально

Дмитрий Елисеев

Если рассматривать все языки с их разделением по областям применения, то есть языки общего назначения, на которых пишут софт разного типа, и есть специализированные, на которых чаще пишут что-то одно.

PHP в этом плане сильно специализированный, так как используется только для разработки сайтов. В такой специализации есть как плюс, так и минус.

Минус в том, что PHP приспособлен только к стандартному для него синхронному однопоточному выполнению в рамках веб-сервера, а остальное пока не очень умеет. Так что как только требуется сделать что-то для него нестандартное, то возникает необходимость эмулировать эти вещи или делать остальные части на других языках вроде серверного JavaScript для асинхронности или Go для многопоточности.

А плюс в том, что хоть он и делает всего одну работу, но делает её идеально. Разработчики самого языка не отвлекаются на посторонние задачи и совершенствуют его только в основном направлении, оптимизируя скорость и привнося только важные для него новшества из других языков. Поэтому в нише скриптовых интерпретируемых веб-языков PHP практически является самым быстрым. Быстрее него уже только языки компилируемые, но будущий PHP 8.0 с JIT-компиляцией, как нам обещает его разработчик Дмитрий Стогов в докладе, вскоре обгонит и их.

К тому же это язык с синтаксисом из семейства более продвинутых Java и C#, что позволяет PHP-программистам учиться у них и при необходимости легко перейти на любой язык этой группы. С Ruby или Python со своим обособленным синтаксисом это будет сделать проблематично.

В PHP переходят хорошие практики из других языков. Создаются и развиваются профессиональные фреймворки. Так что из языка для любительских сайтов он уверенно переходит в нишу быстрых профессиональных веб-проектов, авторам которых не хочется поднимать тяжелые серверы на Java. Учить PHP сейчас или нет? Каждый раз накатывает новая волна технологий и каждый раз снова и снова «хоронят» PHP фразами, что вот-вот очередные Ruby или NodeJS победят PHP. Но десятки лет проходят, а всё никто его не побеждает.

Помимо продвинутого программирования веб-приложений на фреймворках, PHP отличается наличием большого числа CMS для разработки стандартных сайтов. И они никуда исчезать не собираются. Для экзотических задач удобны экзотические языки. А для классических проектов успешно хватает классического PHP. Так что всегда можно сказать, что другие языки приходят и уходят, а PHP, С++ и Java скорее всего вечны. И работы на них всегда будет много.

Дмитрий Елисеев, предприниматель, автор проектов elisdn.ru и deworker.pro.

Александр Сербул: в веб-разработке у PHP нет достойной альтернативы

Александр Сербул

Я занимаюсь разработкой с нулевых годов. В работе использую преимущественно PHP, также пользуюсь JavaScript, Java, Python и другими языками. Могу сказать, что PHP очень специфичный язык. Он создан специально для веб-разработки, для решения конкретных задач в вебе. PHP решает связанные с веб-разработкой задачи максимально быстро, здесь не нужны тяжеловесные инструменты, как в других языках.

Когда-то PHP был очень простым и достаточно медленным языком. Затем он стал развиваться в сторону Java в плане синтаксиса и поддержки объектно-ориентированного программирования (ООП). Появилось движение в сторону сильной типизации. Разработчики стали понимать, что для больших серьёзных проектов слабая типизация — недостаток.

В плане перспектив языка нужно понимать ситуацию. PHP заточен под веб, а в вебе он конкурирует, например, с JavaScript и Python. Из-за этого есть тенденция снижения зарплат PHP-программистов. Но это временное явление.

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

Но тенденция, как я говорил, временная. PHP не умрёт, так как у него нет альтернатив в веб-разработке. Тот же Python не заточен под веб так, как заточен PHP.

Если говорить о перспективах, язык будет развиваться. В PHP появится сильная типизация, будет развиваться ООП. Так что у языка хорошие перспективы.

Александр Сербул, руководитель направления контроля качества интеграции и внедрений в 1С-Битрикс.

Стоит ли учить PHP: заключение

PHP в обозримой перспективе останется востребованным языком. Его используют в веб-разработке, на PHP написаны популярные движки для сайтов и фреймворки. Это целая инфраструктура, которая требует постоянного участия программистов. Поэтому специалисты по PHP останутся востребованными на рынке труда.

По словам экспертов, язык развивается в сторону ООП, в нем ожидается появление сильной типизации. Это упростит работу над серьёзными масштабными проектами. Поэтому разработчиков на PHP ждут интересные задачи. На Хекслете изучать PHP можно в рамках профессии. Азы можно изучать на нашем бесплатном ресурсе Code Basics.

Мы учим программированию с нуля до стажировки и работы. Попробуйте наш бесплатный курс «Введение в программирование» или полные программы обучения по Node, PHP, Python и Java.

Хекслет

Подробнее о том, почему наше обучение работает →