Дорожная карта PHP разработчика в 2018 году

Дорожная карта PHP разработчика в 2018 году

@phpproglib

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

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

Git - популярная система контроля версий, чья основная задача - контролировать процесс разработки.

SSH - защищенный протокол для удаленного доступа к компьютерам.

HTTP/HTTPS - это протоколы передачи гирпетекста, второй из которых - безопасный.

Структуры данных и алгоритмы

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

Вот так в подробностях выглядит ветка backend-разработки:

Но давайте по порядку.

Шаг 1 - Выучи язык.

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

Шаг 2 - Практикуйтесь с теми знаниями, что уже есть.

Лучшая учёба - это практика. На пути к совершенству вы пройдёте по дороге боли и упадка, создав не один плохой сайт, поэтому не бойтесь и пишите код. Лучше сразу прочтите про стандарты PSR, чтобы избавить себя в будущем от переучивания к хорошему стилю (тут самые основные из них на русском языке).

Шаг 3 - Менеджер зависимостей композер.

Пока вы решались разрабывать на PHP, до вас уже была написана куча библиотек и дополнений, выполняющих разные задачи. Это различные роутинги, шаблонизаторы, библиотеки по работе с API и многое другое. Их лучше всего устанавливать с официального сайта распространителя через популярный менеджер зависимостей composer. Достаточно просто добавить библиотеки, от которых зависит ваш проект, в файл composer.json, а композер установит всё за вас и ещё будет следить за выходом новых версий.

Шаг 4 - Стандарты и лучшие практики.

Настало время ООП и шаблонов проектирования. Поверьте, вы не найдёте долгоживущий проект, не реализующий большинство из этих шаблонов. Их не просто так назвали лучшими практиками: долгие годы сообщество разработчиков в едином порыве изобретали и находили решения, способные заменить десятки других. Тут вам подойдёт знаменитая книга от Мэтта Зандстры по шаблонам проектирования на PHP.

Шаг 5 - Безопасность.

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

Шаг 6 - Тестирование.

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

Шаг 7 - Базы данных.

Не забывайте про базы данных, вы должны уметь писать как чистые запросы на SQL, так и использовать различные ORM (например, RedBeanPHP, Eloquent, Doctrine, etc). Важно разбираться, когда чистый запрос будет работать быстрее ORM, а когда лучше использовать ORM, чтобы не писать большие запросы к базе. У этого автора вы найдёте ответы на эти и другие вопросы.

Шаг 8 - Фреймворки.

Сегодня вся коммерческая разработка ведётся с помощью фреймворков, поэтому вам лучше изучить самые популярные из них: Laravel, Yii2, Symfony, Silex, CakePHP и Slim.

Шаг 9 - Научитесь использовать Docker.

В любой организации от вас потребуют навыки по работе с Docker, так что изучайте его заранее, чтобы потом не было больно.

Шаг 10 - RESTful API.

RESTful API - это архитектурный стиль взаимодействия компонентов в сети. Тут вам понадобится изучить не только теорию и примеры, но и библиотеку cURL.

Шаг 11 - NoSQL базы данных.

Для начала разберитесь, что это такое и чем отличается от привычных нам реляционных баз данных, потом можете посмотреть в сторону MongoDB.

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

Report Page