Блог Серії
Кар'єра
Вакансії Компанії
Навчання
Співбесіди Тестування Відео
Екосистема
Пакети Ресурси Проєкти
Інше
Події Про нас

Що таке Repository Pattern і чи варто його використовувати в Laravel?

Repository Pattern абстрагує доступ до даних за інтерфейсом, ховаючи конкретну реалізацію (Eloquent, API, файли).

interface PostRepository
{
    public function published(): Collection;
}

Нюанс для Laravel: Eloquent уже є реалізацією Active Record і сам по собі є абстракцією над БД. Тому додавання репозиторіїв часто надлишкове й лише дублює API Eloquent. Виправдане, коли:

  • треба підміняти джерело даних (Eloquent ↔ зовнішнє API);
  • є складна доменна логіка (DDD), де моделі не мають знати про БД.

У типовому CRUD-застосунку спільнота вважає це антипатерном.

Схожі питання