جیسے جیسے Laravel ایپ لیکیشن بڑی ہوتی ہے، ڈیفالٹ "fat controller / fat model" انجام تک پہنچنا مشکل ہو جاتا ہے۔ بڑی ایپ لیکیشنز اضافی آرکیٹیکچرل لیئرز سے فائدہ اٹھاتی ہیں — service classes، action classes، repositories، form requests، اور واضح domain organization — business logic کو منظم، testable، اور maintainable رکھنے کے لیے۔
مسئلہ: منطق غلط جگہوں میں ختم ہو جاتی ہے
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 — business logic کو encapsulate کریں
{
{}
{
DB::(function () ($, $) { /* ... */ });
}
}
{
->(->(), ->());
}
