Join our team of writers
Hassan MohammadzadehHassan Mohammadzadeh
Back to blogProgramming Tutorials

آشنایی با الگوی طراحی Repository در Laravel

July 17, 2026

الهام قاسمی

Written by:

الهام قاسمی

آشنایی با الگوی طراحی Repository در Laravel

وقتی کوئری‌های Eloquent مستقیم داخل Controller نوشته می‌شوند، تست نوشتن و تغییر منبع داده بعداً سخت می‌شود. الگوی Repository این مشکل را حل می‌کند.

ایده‌ی اصلی

به‌جای صدا زدن مستقیم User::where(...) در Controller، یک اینترفیس مثل UserRepositoryInterface تعریف می‌کنید و پیاده‌سازی آن را در یک کلاس جدا می‌نویسید.

  • Controller فقط با اینترفیس کار می‌کند، نه با جزئیات Eloquent.
  • تست نوشتن ساده‌تر می‌شود چون می‌توانید Repository را mock کنید.
  • تغییر منبع داده (مثلاً از MySQL به یک API خارجی) بدون تغییر Controller ممکن می‌شود.

البته برای پروژه‌های کوچک، این لایه‌ی اضافه ممکن است پیچیدگی غیرضروری ایجاد کند؛ تصمیم باید متناسب با اندازه‌ی پروژه باشد.

Comments (0 comments)

You need to sign in to post a comment. Sign in

آشنایی با الگوی طراحی Repository در Laravel | Hassan Mohammadzadeh