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

195

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

  • Модель, как часть архитектуры MVC
  • Применение классов, объектов и наследования к построению системы моделей
  • Изучение модификаторов видимости
  • Статические свойства и методы, константы классов, LSB

Продолжение разговора о моделях

  • Интерфейсы
  • Абстрактные классы
  • Тайп-хинтинг
  • Трейты, как горизонтальный перенос кода
  • Разбор некоторых полезных паттернов
  • Построение CRUD-каркаса приложения

Изоляция уровня представления

  • Представление в архитектуре MVC
  • Способы изоляции представления, что такое логика представления
  • Альтернативный синтаксис операторов
  • Изучение некоторых магических методов
  • Пара слов о PHPDoc
  • Буфер вывода
  • Знакомство с интерфейсами из SPL

Контроллеры и фронт-контроллер

  • Понятие фронт-контроллера, роутера, контроллера, экшна
  • Построение иерархии контроллеров
  • Связь контроллеров с моделями и представлениями
  • Разработка роутинга, рассказ о RewriteRule и других полезных приемах

Исключения

  • Понятие исключения
  • Иерархия исключений
  • Использование исключений в приложении на базе архитектуры MVC
  • Паттерн «Мультиисключение»

Современные стандарты PHP

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

«Новые» возможности PHP
Обсудим возможности, появившиеся в последних версиях PHP и, особенно, в PHP 7, и их применение на практике

  • Разворачивание списка аргументов
  • Анонимные функции
  • Тайп-хинтинг
  • Генераторы

Обзор современных фреймворков
На примере фреймворка T4 рассмотрим основные возможности современных фреймворков на PHP:

  • Быстрое развертывание веб-приложения
  • Управление структурой БД через механизм миграций
  • Реализация MVC, архитектура приложения
  • Использование composer
  • Консольные приложения на PHP