Интенсивный онлайн‑курс
Профессиональный PHP,
уровень 1

24 апреля — 30 мая 2018

Записаться на курс
Интенсивный онлайн‑курс «Профессиональный PHP, уровень 1

Задача HTML Academy — готовить полноценных и востребованных специалистов, готовых работать в веб-индустрии.

Как проходит онлайн‑курс

Начальный уровень: новичок

Курс рассчитан на новичков без навыков программирования. Для прохождения интенсива нужны навыки HTML и CSS, которые можно получить, пройдя бесплатные интерактивные курсы.

Даты интенсива

Интенсив длится пять недель, c 24 апреля по 30 мая. Каждую неделю проходят две живые лекции, после которых надо выполнять практические задания и работать с наставником.

Живые лекции

Живые лекции проходят по вторникам и пятницам с 19:00 до 21:00 по московскому времени. Преподаватель рассказывает лекцию, а студенты задают вопросы.

Записи лекций

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

Практика

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

Личный наставник

Персональный наставник помогает выполнять задания и проверяет результаты работы. Это ваш личный преподаватель, который помогает вам весь курс и делится секретами мастерства. Расписание работы с наставником вы определяете сами.

Защита проекта

Интенсив завершается защитой проекта, где ваш проект проверяется в соответствии с профессиональными критериями качества.

Что включает в себя интенсив

Вся полезная информация и знания разбиты по трём каналам.

Проекты для работы на интенсиве

Учебный проект

Учебный проект будет общим для всех, над ним вы будете работать вместе с преподавателем на живых лекциях.

Учебный проект GifTube

Проект «GifTube»

Это сервис для загрузки и просмотра гифок. Сервис поддерживает:

  • загрузку и обработку гифок;
  • поиск и просмотр гифок;
  • добавление комментариев и лайков;
  • регистрацию и авторизацию пользователей.

Живую версию этого проекта можно посмотреть по адресу giftube.academy.

Личные проекты

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

Личный проект «Дела в порядке»

Проект «Дела в порядке»

Сервис для планирования дел с возможностью создания, поиска и редактирования задач.

Личный проект «Yeti Cave»

Проект «Yeti Cave»

Интернет-аукцион с возможностью создания, поиска и выкупа лотов.

Программа

Внимание! Программа может изменяться и дополняться.

Раздел 1

Знакомство

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

Разберёмся с основами программирования: начиная с понятия алгоритма и заканчивая непосредственно синтаксисом языка.

План лекции:

  • Общая информация об интенсиве;
  • Как работать с Гитом;
  • Краткое описание языка и его сфера применения;
  • Презентация личных проектов;
  • Как установить необходимый софт;
  • Пишем и запускаем первый сценарий;
  • Азы синтаксиса: переменные, операторы, типы, условные конструкции;
  • Понятие выражения.
Практика

Практика

Ознакомительное задание — пишем свой первый сценарий.

Раздел 2

Стандартные API

Закончим изучение синтаксиса языка, рассмотрев такие понятия, как функции, массивы и объекты. Познакомимся с несколькими популярными функциями из стандартной библиотеки. Взглянем на области видимости: глобальные и локальные переменные.

Разберёмся с двумя вариантами запуска PHP-сценариев — в режиме командной строки и веб-сервером. Посмотрим на взаимодействие PHP-интерпретатора с сервером.

План лекции:

  • Циклы, функции, массивы, встроенные функции, области видимости;
  • Режимы работы: CLI и веб-сервер;
  • Окружение разработчика.
Практика

Практика

Пишем функции, используя все знания о синтаксисе языка.

Раздел 3

Шаблонизация и организация кода

Взглянем на шаблонизацию и разберёмся зачем это нужно на примере учебного проекта.

Попробуем разбить большие PHP-сценарии на отдельные файлы. Рассмотрим вопросы правильной организации кода: вынесем представление в отдельные шаблоны. Не забудем разобрать вопросы безопасности при выводе информации.

План лекции:

  • Как встраивать PHP в вёрстку;
  • Как подключать PHP-сценарии — инструкция require;
  • Шаблонизация;
  • Безопасность.
Практика

Практика

Шаблонизация личного проекта.

Раздел 4

HTTP и формы

Познакомимся с протоколом HTTP. Поговорим о принципах работы протокола, основных методах, заголовках и кодах ответа. Узнаем, как PHP упрощает работу с HTTP и как получать и обрабатывать параметры запроса. Рассмотрим способы отправки данных из браузера на сервер.

Начнём работать с формами — главной областью применения PHP. Посмотрим как правильно получать данные из форм, валидировать их и показывать ошибки. Научимся отправлять и сохранять полученные от пользователей файлы.

План лекции:

  • Описание и детальное знакомство с протоколом HTTP;
  • GET-параметры запроса;
  • Как создавать и отправлять формы;
  • Валидация форм;
  • Отправка файлов на сервер.
Практика

Практика

Получение, обработка и показ данных из форм.

Раздел 5

Хранение состояния и аутентификация

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

Разберёмся с понятием аутентификации — процедуре проверки переданного логина и пароля для предоставления пользователю доступа к закрытой части сайта. Рассмотрим частые задачи: как правильно хранить и проверять пароли, как «запоминать» пользователя на сайте и другие. Пройдём весь процесс по шагам: от ввода логина и пароля в форму до проверки авторизации.

План лекции:

  • Проблема хранения состояния в вебе;
  • Куки и сессии;
  • Аутентификация;
  • Как хранить и проверять пароли;
  • Практика организации доступа в учебном проекте.
Практика

Практика

Организуем простую аутентификацию.

Раздел 6

Чужой код

Поговорим о том, в чём настоящее назначение разработки и программиста — работать над решением проблем. Узнаем, как правильно выбирать и искать готовые решения, когда это целесообразно, а когда нет.

Попробуем выделить свою библиотеку и научимся автоматически её подключать. Рассмотрим современный способ поиска и установки библиотек — пакетный менеджер composer. Познакомимся с основными сценариями его использования и научимся оформлять свой код в виде пакета.

План лекции:

  • Почему велосипеды это плохая идея;
  • Что такое библиотеки;
  • Современный менеджер пакетов composer;
  • Популярные библиотеки.
Практика

Практика

Подключаем и используем библиотеку для работы с почтой.

Раздел 7

Базы данных: теория

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

План лекции:

  • Теория и история реляционных баз данных;
  • Основные концепции;
  • Что такое MySQL;
  • Язык запросов SQL;
  • Примеры SQL-запросов.
Практика

Практика

Пишем SQL-код для создания таблиц проекта.

Раздел 8

MySQL и PHP

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

Уделим особое внимание безопасности при работе с базами данных. Узнаем какие бывают уязвимости при работе с базами данных из PHP и как правильно составлять запросы, чтобы наш код был безопасным.

План лекции:

  • Как PHP работает с базами данных;
  • Выбор расширения: PDO или MySQLi;
  • Получаем и сохраняем одиночные записи;
  • Сложные запросы на поиск и объединение;
  • Безопасность при выполнении SQL-запросов.
Практика

Практика

Пишем SQL-запросы на чтение данных и работаем с базой данных из PHP.

Раздел 9

MySQL и PHP: частые задачи

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

Рассмотрим актуальные задачи: как правильно организовать вывод контента, сделать постраничную сортировку, полнотекстовый поиск и другое.

План лекции:

  • Производительность баз данных;
  • Кэширование;
  • Нормализация и денормализация;
  • Практика: постраничная навигация;
  • Практика: поиск и фильтрация данных.
Практика

Практика

Добавляем в личный проект поиск и пагинацию.

Раздел 10

Финал

Вспоминаем чему научились на интенсиве, делаем обзор итогового проекта и обсуждаем как его можно улучшить.

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

План лекции:

  • Подведение итогов;
  • Ответы на вопросы;
  • Куда двигаться дальше.

Сертификат

После курса вы получите сертификат.

Сертификат интенсива «Профессиональный PHP, уровень 1»
Кирилл Сенкевич
Кирилл Сенкевич
преподаватель интенсива

Опыт веб-разработки 9 лет, работал в крупных компаниях России и Европы, а также как независимый исполнитель на заказчиков со всего мира.

13 500
До 27 февраля
14 000
После 27 февраля
14 500
После 9 марта
15 000
После 16 марта
15 500
После 27 марта
16 000
После 6 апреля
16 500
После 13 апреля

Оплатить курс можно банковскими картами, электронными деньгами, через интернет-банкинг и наличными через терминал. Возможна оплата по безналичному расчёту для корпоративных клиентов. Нажмите «Записаться и оплатить курс», чтобы узнать больше.

Логотип VisaЛоготип Mastercard

Интересует фронтенд? Выбирайте нужный курс!