فرض کن:
$user = User::find($id);
if (!$user) {
return response()->json([
'message' => 'User not found'
], 404);
}
return $user;
کد کاملاً قابل قبول به نظر میرسد.
اما حالا تصور کن همین الگو در ۵۰ Controller تکرار شده باشد.
مشکل دیگر Syntax نیست.
مشکل:
❌ منطق تکراری
❌ تغییر سخت
❌ تستهای پراکنده
❌ رفتارهای متفاوت بین Endpointها
اینجاست که Developer حرفهای اول میپرسد:
«چرا این منطق دارد اینهمه جا تکرار میشود؟»
بعد میتواند بسته به معماری پروژه از:
* Service
* Action
* Exception
* Middleware
* Resource
استفاده کند.
💡 انجام دادن Refactor یعنی فقط کوتاهتر کردن کد نیست؛ یعنی کاهش هزینه تغییر دادن سیستم.
@CodeVerse_dev