Laravel-data от Spatie: просто и со вкусом! Описание библиотеки.
Фреймворк Laravel, конечно же, давно предоставляет довольно удобные инструменты для валидации и модификации входящих и исходящих (request и response) данных.
Всем нам известны FormRequest, Eloquent API Resource, пакет DataTransferObject (DTO) от Spatie.
Зачем же та же самая компания Spatie создала новую библиотеку, laravel-data? И почему она показалась мне такой интересной? Да просто потому, что эта библиотека, с одной стороны, не привносит ничего особенно нового, а с другой - делает работу по обмену данными более простой и универсальной. Один хорошо написанный с помощью этой библиотеки класс делает всю необходимую валидацию и трансформацию любых данных на любом участке обмена ими. Да плюс ко всему, один дополнительный пакет позволяет ещё и трансформировать эти data objects, написанные на PHP в... описания типов для TypeScript!
Как хотите, но мне этот подход кажется очень интересным. Вот я и создал маленький тестовый проектик, чтобы показать на примерах, как удобно, просто и гибко можно управлять обменом данных в наших laravel-приложениях.
Надеюсь, ролик заинтересует как начинающих, так и опытных PHP и Laravel-разработчиков.
Содержание видео “Laravel-data от Spatie: просто и со вкусом! Описание библиотеки.“:
0:00 О чём пойдёт речь
0:40 Чем отличаются объекты полноценных классов от объектов данных (data object)?
1:55 Когда мы используем data objects? Диаграмма потоков данных между клиентами, нашим API и сторонним API.
4:10 Валидация данных, как реквеста, так и респонза.
7:35 Известные инструменты работы с данными в Laravel: FormRequest, Eloquent API Resource, библиотека spatie/data-transfer-object.
11:20 Переходим к обзору laravel-data от Spatie.
12:35 Практикум. Создаём объект данных (data object) для описания персоны. На его примере валидируем и модифицируем данные реквестов и респонзов.
32:20 Подробнее о работе с датами.
36:05 Обзор возможностей laravel-data по документации библиотеки.
37:05 TypeScript-трансформация с помощью laravel-data.
41:10 Заключительные рассуждения.
Полезные ссылки:
➡ Документация библиотеки spatie/laravel-data:
➡ Репозиторий:
Получать анонсы новых видео можно на нашем телеграм-канале “Глазами фрилансера“:
#ГлазамиФрилансера #Laravel #PHP
17 views
48
15
2 years ago 00:31:03 8
MoonShine гайд. 5. Реализация реальных задач в панели администратора для Laravel
2 years ago 00:43:52 17
Laravel-data от Spatie: просто и со вкусом! Описание библиотеки.
2 years ago 01:05:06 3
Интервью с Ильёй Зобенько (Юла, Group) о PHP. Отношение к языку, советы новичкам [Хекслет]
3 years ago 00:07:40 27
DTO в laravel для requests а также обзор библиотеки от Spatie
3 years ago 00:13:26 5
Уроки cURL. Работа с прокси
5 years ago 00:17:14 41
Laravel Swagger/OpenAPI - Ответ на вопрос от зрителя
5 years ago 01:50:28 1
🔥🇺🇸 APPLE - Техническое собеседование Frontend developer. Стажировка в США. Калифорния