[profit] «PHP-2: Профессиональное программирование» (Альберт Степанцев)

Profit - Академия программирования
Преподователь: Альберт Степанцев
Курс посвящен последовательному построению веб-приложения на основе архитектурной модели MVC с нуля и до полноценного работающего сайта. Попутно уделяется время изучению сложных понятий ООП в современном PHP.
В курс также входит обзор современных фреймворков для веб-программистов.
Модели данных и ООП

  • Модель, как часть архитектуры MVC
  • Применение классов, объектов и наследования к построению системы моделей
  • Изучение модификаторов видимости
  • Статические свойства и методы, константы классов, LSB
Продолжение разговора о моделях
  • Интерфейсы
  • Абстрактные классы
  • Тайп-хинтинг
  • Трейты, как горизонтальный перенос кода
  • Разбор некоторых полезных паттернов
  • Построение CRUD-каркаса приложения
Изоляция уровня представления
  • Представление в архитектуре MVC
  • Способы изоляции представления, что такое логика представления
  • Альтернативный синтаксис операторов
  • Изучение некоторых магических методов
  • Пара слов о PHPDoc
  • Буфер вывода
  • Знакомство с интерфейсами из SPL
Контроллеры и фронт-контроллер
  • Понятие фронт-контроллера, роутера, контроллера, экшна
  • Построение иерархии контроллеров
  • Связь контроллеров с моделями и представлениями
  • Разработка роутинга, рассказ о RewriteRule и других полезных приемах
Исключения
  • Понятие исключения
  • Иерархия исключений
  • Использование исключений в приложении на базе архитектуры MVC
  • Паттерн 'Мультиисключение'
Современные стандарты PHP
  • Пространства имен
  • Автозагрузка
  • Обзор стандартов PSR
  • Пакетный менеджер composer и его использование в своих проектах
'Новые' возможности PHP
Обсудим возможности, появившиеся в последних версиях PHP и, особенно, в PHP 7, и их применение на практике
  • Разворачивание списка аргументов
  • Анонимные функции
  • Тайп-хинтинг
  • Генераторы
Обзор современных фреймворков
На примере фреймворка T4 рассмотрим основные возможности современных фреймворков на PHP:
  • Быстрое развертывание веб-приложения
  • Управление структурой БД через механизм миграций
  • Реализация MVC, архитектура приложения
  • Использование composer
  • Консольные приложения на PHP