DTO (Data Transfer Object) ► Шаблон проектирования Урок №21

Аватар автора
Дмитрий Афанасьев: PHP, Laravel, Чистый код
DTO (Data Transfer Object) - Объект передачи данных DTO - это объект который переносит данные между системами (веб-сервисы, подсистемы или процессы одного приложения) Оглавление: 00:00 Начало 01:07 Определение, история возникновения шаблона 05:55 Варианты реализации DTO в PHP 18:05 Варианты использования DTO (Laravel или любой другой фреймворк) 23:25 Изменения в Apiato (Porto) - исчезло использование DTO 30:08 Притянули Роберта Мартина 32:21 Про критику DTO Шаблон проектирования DTO изначально был придуман для решения проблемы передачи данных между системами (веб-сервисами). Первичная цель DTO заключалась в передаче данных при дорогостоящих удаленных вызовах. Вместо нескольких вызовов и передачи нескольких объектов делается один вызов и передается один собирательный объект. Так же решаются проблемы: - Ошибки при сериализации передаваемых объектов - Сложная многоуровневая структура объектов - Ненужные (излишние) для передачи данные Объект DTO не должен содержать никакого поведения (никакой бизнес-логики), кроме хранения, извлечения, сериализации и десериализации собственных данных. Злоупотребления использования DTO: - Избыточность. Есть объект бизнес-логики (BLO), и есть DTO его представляющий. Может получиться так что единственным отличием между ними будет только то, что объект DTO не содержит поведения. Это приводит и к усложнение архитектуры приложения и к дополнительным затратам на написание кода. - Использование DTO внутри одного слоя (не для передачи между...

0/0


0/0

0/0

0/0