منبع: chatgpt
Symfony از الگوهای طراحی متعددی در هستهی خود استفاده میکند. برخی از مهمترین آنها عبارتاند از:
۱. Dependency Injection (تزریق وابستگی)
- کاربرد: Symfony به شدت از تزریق وابستگی استفاده میکند. این الگو به مدیریت وابستگیهای بین اشیاء کمک میکند و از سختکدنویسی وابستگیها جلوگیری میکند. Service Container در Symfony پیادهسازی تزریق وابستگی است.
- کجا: استفاده از سرویسها در کنترلرها و سایر بخشهای برنامه.
۲. Observer (ناظر)
- کاربرد: Symfony از الگوی ناظر برای پیادهسازی سیستم رویداد (Event Dispatcher) استفاده میکند. با این الگو، میتوان به رویدادهای مختلف در برنامه واکنش نشان داد.
- کجا: رویدادهای مختلف مانند درخواست HTTP یا پاسخ HTTP.
۳. Strategy (استراتژی)
- کاربرد: این الگو در سیستم اعتبارسنجی (Validation) و مسیریابی (Routing) Symfony استفاده میشود. به این ترتیب امکان انتخاب رفتارهای مختلف بدون تغییر کد پایه وجود دارد.
- کجا: انتخاب استراتژیهای مختلف مسیریابی یا اعتبارسنجی.
۴. Factory (کارخانه)
- کاربرد: Symfony برای تولید اشیاء مختلف مانند درخواستها (Request)، پاسخها (Response)، و فرمها (Form) از الگوی Factory استفاده میکند.
- کجا: در بخشهای مختلفی از برنامه که نیاز به ایجاد اشیاء متعدد با ساختار یکسان ولی پیادهسازیهای مختلف وجود دارد.
دیدگاهتان را بنویسید