Провели большой практический стрим про разделение на модули и микросервисы
Задонатить и смотреть →
Открой безлимитный доступ к 100+ полезных скринкастов и получай скидки на все предстоящие мероприятия

Фабрики запросов и ответов PSR-17

После перехода на интерфейсы PSR-7 мы уже понимаем, как делать переносимыми функции, которые работают с переданным им Request-ом. Но пока не знаем, что делать с функциями, которые у себя создают ответ Response.

Поэтому помимо инверсии контроля за запуском приложения и инверсии зависимостей сегодня рассмотрим инверсию контроля за созданием зависимостей. Это нам позволит отвязаться от зависимости от конкретных классов и понять причины появления PSR-17.

Помимо этого рассмотрим заблуждение многих PHP-програмистов при написании анонимных функций. Почему класс для них назван Closure и являются ли все анонимные функции замыканиями.

  • 00:01:47 - Зависимость от класса Response
  • 00:05:39 - Подготовка кода
  • 00:07:17 - Инверсия контроля запуска приложения
  • 00:10:00 - Инверсия зависимостей компонентов
  • 00:10:27 - Инверсия контроля за созданием зависимостей
  • 00:11:47 - Приём заготовки Response
  • 00:13:12 - Приём конфигурации
  • 00:16:41 - Постоянные и непостоянные параметры
  • 00:18:06 - Конфигурируемая функция
  • 00:18:50 - Именованные и анонимные функции
  • 00:20:00 - Отличие лямбды от замыкания
  • 00:22:43 - Контекст текущего объекта
  • 00:27:47 - Заблуждение PHP-программистов
  • 00:29:57 - Конструкторы для функций
  • 00:34:25 - Унификация вызовов
  • 00:36:06 - Функциональный класс
  • 00:38:05 - Неудобства передачи Response
  • 00:38:58 - Использование фабрики
  • 00:43:26 - Написание фабрик для HTTP Message
  • 00:48:34 - Перемещение фабрики fromGlobals
  • 00:51:30 - Вынесение общих интерфейсов
  • 00:53:03 - Промежуточный итог
  • 00:54:19 - Обзор PSR-17 HTTP Factories
  • 00:55:51 - Переход на PSR-17
  • 00:59:55 - Переход на готовую реализацию
  • 01:02:16 - Использование в тестах
  • 01:03:45 - Удаление устаревших настроек
  • 01:05:38 - Хэлперы для заполнения контента
  • 01:09:03 - Когда это уместно
  • 01:11:04 - Обзор результата
Скрытый контент (код, слайды, ...) для подписчиков. Открыть →
Дмитрий Елисеев
elisdn.ru
Комментарии (2)
Владимир Перепеченко

Здравствуйте, Дмитрий

Отдельная благодарность за разоблачение мифов про closure/lambda! Это - мутная тема, плохо освещенная в интернетах.

Вообще, этот курс получился шикарным. Узнаю разные фишечки, о которых сам не догадался бы.

Плюс ваши вербальные формулировки и определения стали предельно чеканными и выверенными.

Вопрос: Я не понял разницы между request и server request. И, соответственно, между request factory и server request factory. Если она есть, то в чём?

Ответить
Arunas

спасибо

Ответить
Зарегистрируйтесь или войдите чтобы оставить комментарий

Или войти через:

Google
GitHub
Yandex
MailRu