Service Layer - бізнес-логіка в одному місці
Концентрує бізнес-логіку у виділеному шарі сервісів, лишаючи контролери тонкими. Як перевикористовувати правила між HTTP, CLI та чергами.
Почніть вводити, щоб шукати по статтях, вакансіях, компаніях, проєктах, ресурсах, пакетах, подіях і користувачах.
Статті, новини, туторіали та переклади від учасників спільноти
Концентрує бізнес-логіку у виділеному шарі сервісів, лишаючи контролери тонкими. Як перевикористовувати правила між HTTP, CLI та чергами.
Відділяє бізнес-логіку від доступу до даних за стабільним контрактом. Коли він виправданий, а коли в Laravel зайвий поверх Eloquent.
Додає нові операції над набором об'єктів, не змінюючи їхні класи. Коли операцій більше, ніж типів, і чому новий тип об'єкта - слабке місце патерну.
Задає каркас алгоритму в базовому класі, а змінні кроки делегує нащадкам. Чим відрізняється від Strategy і коли спадкування поступається композиції.
Виносить взаємозамінні алгоритми в окремі класи за спільним інтерфейсом. Тарифи, доставка, знижки - без каскадів if, з вибором через контейнер.
Змінює поведінку об'єкта залежно від стану, прибираючи каскади if. Замовлення, підписки, оплати та пакет spatie/laravel-model-states.
Організовує реакції на події без жорстких зв'язків. У Laravel це Events, Listeners і Subscribers - як додавати реакції, не торкаючись джерела події.
Зберігає знімок стану об'єкта і відновлює його, не порушуючи інкапсуляцію. Основа для undo/redo: ролі Originator, Memento та Caretaker.
Знімає прямі залежності між об'єктами, пропускаючи взаємодію через посередника. У прикладній архітектурі це orchestrator чи application service.
Матеріали за темою «Патерни проєктування»: усе, що ми писали про це українською. Нижче - суміжні теми, якщо шукаєте ширше.
Зараз опубліковано 34 матеріали від 3 авторів. Останній матеріал - 10 вересня 2026.