Интенсивный онлайн‑курс
«Базовый PHP»
c 18 апреля по 24 мая 2017

Наша задача — подготовить востребованного специалиста высокого уровня, готового работать в веб-индустрии.

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

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

Профессиональный рост

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

Рабочий процесс как в IT-компаниях

Процесс работы над практическими заданиями построен с использованием систем контроля версий и GitHub.

Что включает в себя интенсив
Почему мы?
Программа интенсива
Внимание! Программа может изменяться и дополняться.

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

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


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

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

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

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

Учебный макет «GIFTUBE»

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

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

Личный макет «Yeti Cave»

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

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

Личный макет «Дела в порядке»
Раздел 1: знакомство
Теория

На этой лекции ученик получит общее представление о предмете курса, узнает что ему предстоит изучить, как будет строиться процесс, познакомится с гитом. Студенту также будет рассказано об истории языка PHP и сфере его применения в современном IT, востребованности и перспективах. Вторая часть вебинара будет посвящена основам программирования: начиная с понятия алгоритма и заканчивая непосредственно синтаксисом языка. По итогам вебинара ученик сможет использовать основные конструкции PHP, реализуя на них простейшую логику. Презентация учебного проекта.

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

На этом вебинаре мы закончим изучение синтаксиса языка, рассмотрев такие понятия, как функции и массивы. Важно дать четкое понимание этих двух важных типов данных, пояснив идею, с помощью простых и доступных аналогий. Узнав, что такое функции и как они работают, познакомимся с несколькими популярными функциями из стандартной библиотеки. Объяснение как работают области видимости: глобальные и локальные переменные. Почему глобальные переменные - это плохо. Вторая половина лекции расскажет о двух вариантах исполнения php - в режиме коммандной строки и веб-сервером. Кратко расскажем о взаимодействии php интерпретатора с сервером. В конце занятия узнаем как установить необходимый софт, IDE, как пользоваться и настраивать.

  • циклы, функции, массивы, встроенные функции, области видимости
  • режимы работы: cli и веб
  • установка и использование необходимого инструментария
Практика
Пишем функции, используя все знания о синтаксисе языка
Раздел 3: HTML/HTTP/Формы
Теория

Краткий экскурс в язык HTML. Узнаем, почему php отлично подходит для генерации html и почему он сам по себе является шаблонизатором. От HTML перейдем к средству его доставки - протоколу HTTP. Поговорим о принципах работы этого протокола, основных методах, заголовках и кодах ответа. Логичным продолжением экскурса в HTTP будет работа с формами - главная область применения PHP. Рассмотрим различные способы отправки данных из браузера на сервер. В конце разговора научимся отправлять файлы.

  • как встраивать в html, шаблонизация
  • как работает HTTP
  • работаем с формами
  • загрузка файлов
Практика
Создаем форму и получаем из неё данные
Раздел 4: хранение состояния
Теория

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

  • сессии и куки - зачем они нам нужны и проблема хранения состояния в вебе
  • процесс аутентификации
  • работа с файлами
  • подключение файлов
Практика
Организуем простую веб-аутентификацию
Раздел 5: реляционные БД - теория и немного практики
Теория

Это очень важное занятие, на котором студенты узнают что такое современные реляционные СУБД, зачем они нужны и как они работают. Придется немного затронуть теорию отношений и реляционную алгебру. Рассмотрим, как общаться с базой данных и применять полученные теоретические знания, используя SQL. В конце занятия выполним sql запрос из php и узнаем как работать с результатом.

  • теория, история реляционных БД
  • основные концепции, формы
  • язык запросов SQL
  • простой пример работы в PHP
Практика
Пишем SQL код для создания таблиц проекта
Раздел 6: практика работы с Реляционными БД
Теория

Используя знания, полученные на прошлом занятии, углубимся в работу с СУБД из PHP. Рассмотрим основные функции для работы с mysql. Подключимся к бд, научимся обрабатывать ошибки, получать и сохранять данные. Научившись этим операциям, попробуем решить пару практических задач, связанные с поиском в бд, выводе найденной информации и сортировке. В конце занятия узнаем какие могут быть уязвимости при работе с БД из php и как правильно составлять запросы, чтобы наш код был безопасным.

  • как PHP работает с БД, pdo и mysqli
  • получаем и сохраняем одиночные записи
  • работа с коллекциями: пагинация, сортировка, поиск
  • пара слов о безопасности
Практика
Пишем SQL запросы на чтение данных и работаем с БД из PHP
Раздел 7: теория ООП и использование в PHP
Теория

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

  • смысл ООП, история и значение
  • три постулата
  • поддержка в PHP
Практика
Выделяем сущности в личном проекте и оформляем их как классы
Раздел 8: практика ООП
Теория

Еще раз посмотрим на различия между сложными и простыми программами. Увидим, как простая программа становится все менее понятной с ростом кодовой базы. Подумаем, какие могут быть пути для упрощения логики и как в этом может помочь ООП подход. От этих размышлений плавно перейдем к шаблону MVC, подробно рассмотрим всего его составляющие и как они могут решить нашу проблему. В конце занятия поймем, что MVC - это не панацея, и найдем дополнительные способы делать наш код поддерживаемым и расширяемым.

  • шаблон MVC
  • повторное использование
Практика
Делаем страницы проекта с использованием MVC подхода
Раздел 9: чужой код
Теория

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

  • почему велосипеды это плохая идея
  • автозагрузка в PHP
  • знакомство с менеджером пакетов Composer
  • популярные библиотеки
Практика
Подключаем библиотеку для работы с почтой, добавляем автозагрузку классам
Раздел 10: финал
Теория

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

  • подведение итогов
  • сбор фидбека
  • ответы на вопросы
  • куда двигаться дальше
Практика
Доработка проекта
Преподаватель интенсива

Кирилл Сенкевич

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

Стоимость интенсива
16 000 руб.

Запись на интенсив закрыта.