Nalika aplikasi Laravel berkembang, pendekatan default "fat controller / fat model" dadi angel diurus. Aplikasi gedhe entuk manfaat saka lapisan arsitektur tambahan — service classes, action classes, repositories, form requests, lan organisasi domain sing jelas — kanggo nglumpukake business logic, testable, lan mudah diurus.
Masalah: logika rampung ing papan sing salah
Small apps: logic in controllers and models is fine.
Large apps: controllers get bloated, models become "god objects", logic is duplicated
→ hard to test, maintain, and reason about. Extract logic into dedicated layers.
Service classes — encapsulate business logic
{
{}
{
DB::(function () ($, $) { /* ... */ });
}
}
{
->(->(), ->());
}
