---
title: "Facade - спрощений доступ"
url: https://laravelukraine.com/blog/facade-sproshhenii-dostup
author: "Олексій Бабінцев"
date: 2026-06-29
---

# Facade - спрощений доступ

Facade надає простий уніфікований інтерфейс до складної підсистеми, ховаючи її деталі за одним фасадним об'єктом.

### Яку проблему вирішує

Щоб виконати дію, клієнтський код інколи мусить знати про кілька об'єктів, порядок їх ініціалізації та зв'язки між ними. Це засмічує контролери й розповзається копіями по застосунку.

### Як вирішує

Фасад надає кілька зручних методів, які всередині координують підсистему. Клієнт викликає один метод і не знає про внутрішню кухню.

```php
class ReportService
{
  public function build(int $userId): array
  {
    return ['status' => 'ok', 'user_id' => $userId];
  }
}

class ReportFacade
{
  public static function build(int $userId): array
  {
    return app(ReportService::class)->build($userId);
  }
}

$report = ReportFacade::build(10);
```

У Laravel фасади - це синтаксичний цукор над контейнером; вони поєднують ідею Facade та Service Locator й широко застосовуються для сервісів, кешу, черг і логів.

### Де застосовувати

- Спрощення доступу до складних або багатокрокових підсистем.
- Тонкий вхідний шар у контролерах, що делегує роботу сервісам.

### Плюси та мінуси

- **+** Код у контролерах коротший і читабельніший.
- **+** Деталі ініціалізації та зв'язків приховані в одному місці.
- **−** Легко перетворити фасад на God Object - тримайте його тонким, реальна логіка живе в сервісах.
- **−** Статичний фасад приховує залежності; у новому коді часто чистіше інжектувати сервіс через конструктор.
