PSR-7 фреймворк 6/7: PSR-15, вывод ошибок и логирование
Шестой урок серии скринкастов по изучению PSR-7 микрофреймворков в PHP. Обновляем фреймворк под принятый PSR-15, дорабатываем вывод ошибок в продакшене и в режиме отладки, изучаем композицию вместо наследования и внедряем логирование.
Обсуждение и исходники: https://elisdn.ru/blog/121/psr7-errors-and-logging
Обновленные эпизоды выходят на https://deworker.pro/edu/series/http-framework
Блог: https://elisdn.ru
Скринкасты: https://deworker.pro
Задонатить: https://elisdn.ru/donate
Тайм-коды:
00:00:00 - Приветствие
00:05:51 - Обновление до PSR-15, теория
00:08:51 - Причины наследования от MiddlewarePipe
00:16:13 - Композиция и агрегация вместо наследования
00:26:13 - Переименовывания в MiddlewareResolverTest
00:30:31 - Изменение MiddlewareResolver
00:35:09 - Обновление компонентов
00:38:31 - Доработка Application
00:45:25 - Новый NotFoundHandler
00:46:43 - ApplicationTest
00:47:09 - RouteMiddleware
00:48:31 - С трёх аргументов на два
00:49:35 - Переработка MiddlewareResolver
00:50:21 - RequestHandlerMiddleware
00:51:50 - CallableMiddlewareDecorator
00:56:29 - DoublePassMiddlewareDecorator
00:59:16 - SinglePassMiddlewareDecorator
01:02:24 - Промежуточные итоги
01:03:40 - LazyMiddlewareDecorator
01:06:07 - MiddlewareResolverTest
01:07:38 - Промежуточные итоги
01:10:40 - ErrorHandlerMiddleware
01:17:27 - Смешивание ответственностей в ErrorHandler
01:19:31 - Гибкость кода, архитектура, теория
01:43:03 - Рефакторинг ErrorHandlerMiddleware
01:47:51 - ErrorResponseGenerator
01:51:39 - Выделение интерфейса ErrorResponseGenerator
01:52:32 - JsonErrorResponseGenerator
01:53:15 - Утилиты Utils
01:56:01 - Перенос универсальных классов во фреймворк
01:58:49 - Применени принципа DIP из SOLID
02:06:25 - Рефакторинг PrettyErrorResponseGenerator
02:18:43 - Промежуточные итоги
02:20:33 - Автовыбор формата вывода ошибки
02:24:55 - Отвязка от zend-diactoros
02:32:06 - Разнесение генераторов, теория
02:34:47 - DebugErrorResponseGenerator
02:39:09 - Проверка работы
02:40:58 - Панель Whoops
02:45:06 - Создание WhoopsErrorResponseGenerator
02:49:28 - Проверка работы
02:51:42 - Перенос в папку фреймворка
02:55:16 - Логирование ошибок
02:58:22 - Класс Logger
03:00:47 - Интерфейс Logger, реализации FileLogger и DbLogger
03:02:27 - PSR-3: Logger Interface
03:04:09 - Библиотека Monolog
03:08:06 - ErrorHandlerTest
03:10:58 - Подключение monolog
03:17:33 - Отлов ошибок 404, ResponsLoggerMiddleware
03:24:18 - Разделение ответственностей, теория
03:28:58 - Рефакторинг
03:32:12 - LogErrorListener
03:34:35 - Промежуточные итоги
03:36:50 - Разделение конфигурации для продакшена и разработки
03:45:13 - Вынесение анонимных функций в классы-фабрики
03:49:18 - Кэширование, ConfigAggregator
03:57:00 - Промежуточные итоги
04:00:26 - Обзор получившегося фреймворка
04:02:53 - Обзор Zend Expressive
04:40:46 - Подведение итогов
Видео PSR-7 фреймворк 6/7: PSR-15, вывод ошибок и логирование автора ElisDN
Видео PSR-7 фреймворк 6/7: PSR-15, вывод ошибок и логирование автора ElisDN
Информация
20 июня 2018 г. 13:13:26
04:44:43
Похожие видео