Зарегистрируйтесь для доступа к 15+ бесплатным курсам по программированию с тренажером

О курсе Веб-разработка на PHP

Переход от написания скриптов (то, что мы делали ранее) к созданию полноценных сайтов сопровождается необходимостью знакомиться с большим числом понятий и инструментов, выходящих далеко за рамки языка. Взаимодействие с внешним миром вовлекает в себя знание операционных систем, в частности сетей, работу с регистраторами, хостингом, деплоем сайта. На собеседованиях веб-программистов часто задают вопрос "Что происходит после того как в адресной строке браузера набирается сайт www.google.com и нажимается enter?". Очень подробный ответ на этот вопрос доступен здесь. Спрашивающий в этот момент хочет услышать от вас ключевые понятия, связанные с веб-разработкой.

  1. Выполнение DNS-запроса для получения IP-адреса домена.
  2. Соединение с веб-сервером, находящемся по этому адресу на порту 443 (или 80) по TCP.
  3. Выполнение HTTP-запроса для получения содержимого сайта по указанному домену.
  4. Получение ответа и рендеринг содержимого во вкладке браузера.

Каждый из этих пунктов неявно подразумевает знание следующих тем:

  • Протокол HTTP. Понятие виртуальных хостов. Желательно понимание принципов работы HTTPS.
  • Принципы работы DNS.
  • Знание TCP/IP. Понятия: порт, маска, подсети. Модель OSI. Сетевые сокеты.
  • Веб-сервер. Что это такое, как работает и зачем нужен.

На Хекслете есть ответы на некоторые из этих вопросов, но большую часть материала придётся почерпнуть из сторонних источников (со временем мы будем добавлять его к себе например на https://guides.hexlet.io). Подавляющее большинство ответов на указанные темы можно (и нужно!) получить в книгах по операционным системам. В наших рекомендованных книгах есть все необходимое. Знание HTTP можно почерпнуть из соответствующего курса. Общее понимание DNS, хостинга, деплоя из курса Введение в веб-разработку. Остальное есть в дополнительных ссылках.

Очень рекомендую посмотреть наше публичное собеседование, где как раз поднимались эти вопросы.

Если говорить про саму разработку, то здесь также открывается целый пласт неизведанного. Фреймворки, микрофреймворки, роутинг, куки, сессии, безопасность, шаблонизация, взаимодействие с базой данных и многое другое. И даже когда вы научитесь готовить сайт, это ещё не конец. Сайт доступен пользователям только находясь на удалённом сервере, а значит в разработку включается понятие "деплой", то есть процесс разворачивания сайта на хостинге. Причём чтобы сайт развернуть, для начала нужно настроить удалённую машину (или машины) используя инструмент наподобие Ansible. Кстати, сам хостинг бывает очень разный: IaaS (AWS), PaaS (Heroku), Shared Hosting (виртуальный хостинг), VPS/VDS.

Данный курс посвящён в первую очередь разработке сайтов с использованием микрофреймворков и темы, указанные выше, включает в себя лишь поверхностно (и то не все). Поэтому крайне рекомендуется выполнять задачи не только в среде Хекслета, но и локально, параллельно выкатывая код на сервис подобный https://www.heroku.com/. Пользователям из РФ для регистрации на этом сервисе необходимо подключить VPN и указать другую страну.

Как подготовиться к этому курсу

Теория и практика в курсе рассчитаны на тех, кто уже хорошо знаком с языком PHP. Если у вас возникнут сложности, рекомендуем пройти эти курсы:


Дополнительные материалы

  1. Что такое протокол HTTPS, и как он защищает вас в интернете
  2. Как работает DNS

Аватары экспертов Хекслета

Остались вопросы? Задайте их в разделе «Обсуждение»

Вам ответят команда поддержки Хекслета или другие студенты.

Для полного доступа к курсу нужен базовый план

Базовый план откроет полный доступ ко всем курсам, упражнениям и урокам Хекслета, проектам и пожизненный доступ к теории пройденных уроков. Подписку можно отменить в любой момент.

Получить доступ
1000
упражнений
2000+
часов теории
3200
тестов

Открыть доступ

Курсы программирования для новичков и опытных разработчиков. Начните обучение бесплатно

  • 130 курсов, 2000+ часов теории
  • 1000 практических заданий в браузере
  • 360 000 студентов
Отправляя форму, вы принимаете «Соглашение об обработке персональных данных» и условия «Оферты», а также соглашаетесь с «Условиями использования»

Наши выпускники работают в компаниях:

Логотип компании Альфа Банк
Логотип компании Aviasales
Логотип компании Yandex
Логотип компании Tinkoff
Рекомендуемые программы
Иконка программы PHP-разработчик
Профессия
с нуля
Разработка веб-приложений на Laravel
23 марта 10 месяцев

Используйте Хекслет по-максимуму!

  • Задавайте вопросы по уроку
  • Проверяйте знания в квизах
  • Проходите практику прямо в браузере
  • Отслеживайте свой прогресс

Зарегистрируйтесь или войдите в свой аккаунт

Отправляя форму, вы принимаете «Соглашение об обработке персональных данных» и условия «Оферты», а также соглашаетесь с «Условиями использования»