В предыдущих главах мы рассмотрели три основных строительных блока наших областей: DTO, действия и модели. Сегодня мы сделаем передышку от низкоуровневых технических вещей и сосредоточимся на философской стороне: как…
Clean Code
Состояния. Предметно-ориентированный Laravel
Паттерн состояния – это один из лучших способов добавить в модели поведение, зависящее от состояния, сохраняя при этом их чистоту. В этой главе мы поговорим о шаблоне состояния…
Модели. Предметно-ориентированный Laravel
В предыдущих главах я говорил о двух из трех основных строительных блоков каждого приложения: DTO и действия – данные и функциональность. В этой главе мы рассмотрим последний фрагмент, который…
Действия. Предметно-ориентированный Laravel
Теперь, когда мы можем работать с данными в безопасном типизированном и прозрачном виде, нам нужно начать что-то делать с ними. Точно так же, как мы не хотим работать…
Шаблон проектирования Спецификация
Паттерн “спецификация” предоставляет возможность описывать требования к бизнес-объектам, и затем использовать их (и их композиции) для фильтрации не дублируя запросы. Что такое спецификация? В Википедии этот паттерн описан так:…
DTO в PHP: как перестать передавать массивы и сделать данные понятными
Проблема DTO не относится только к Laravel. Она появляется почти в любом PHP-проекте: на Laravel, Symfony, Yii, Slim, самописном framework-free приложении или в обычном SDK. В любом фреймворке…
Предметно-ориентированный Laravel
Люди мыслят категориями, наш код должен быть отражением этих мыслей. Во — первых, я не придумал термин “домен” – я получил его из популярной парадигмы программирования DDD, или…
Инверсия зависимостей
Если вы читали предыдущие части этой статьи, вы, возможно, почувствуете, что понимаете, что этот принцип пытается сказать. И Вы были бы правы в том смысле, что этот принцип является…
Принцип разделения интерфейса
Разделение интерфейса . . . Хм, это звучит не так уж плохо, не так ли? Похоже, это как-то связано с разделением . . . МММ, разделяемся . . . межфазные границы. Мне просто…
Принцип подстановки Барбары Лисков
Лисков-что?? Эта штука звучит как что-то прямо из учебника органической химии. Это может даже заставить вас пожалеть о том, что вы выбрали разработку программного обеспечения в качестве карьеры, потому что…