Middle: питання на співбесіді з теми «Архітектура»
Найпопулярніші питання з реальних Laravel/PHP співбесід для всіх рівнів
Всі теми
API
Authentication
Authorization
Blade
Broadcasting
Caching
Collections
Database
Debugging
Eloquent
Events
Filament
Files
Livewire
Notifications
Performance
PHP
Queues
Routing
Scheduling
Service Container
Service Providers
Testing
Архітектура
Безпека
Валідація
1 питання
Repository Pattern абстрагує доступ до даних за інтерфейсом, ховаючи конкретну реалізацію (Eloquent, API, файли).
interface PostRepository
{
public function published(): Collection;
}
Нюанс для Laravel: Eloquent уже є реалізацією Active Record і сам по собі є абстракцією над БД. Тому додавання репозиторіїв часто надлишкове й лише дублює API Eloquent. Виправдане, коли:
- треба підміняти джерело даних (Eloquent ↔ зовнішнє API);
- є складна доменна логіка (DDD), де моделі не мають знати про БД.
У типовому CRUD-застосунку спільнота вважає це антипатерном.