Jak Laravel aplikace roste, přístup "tlustý kontrolér / tlustý model" se stává obtížně udržovatelný. Větší aplikace těží z dodatečných architektonických vrstev — tříd služeb, action tříd, repozitářů, form requestů a jasné organizace domény — aby se obchodní logika zůstala organizovaná, testovatelná a udržovatelná.
Problém: logika skončí na špatných místech
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.
Třídy služeb — zapouzdření obchodní logiky
{
{}
{
DB::(function () ($, $) { /* ... */ });
}
}
{
->(->(), ->());
}
