|
| 1 | +# 📂 ساختار پوشهها در لاراول |
| 2 | + |
| 3 | +در این مطلب با ساختار پوشهها و فایلهای اصلی لاراول آشنا میشویم. این ساختار به گونهای طراحی شده است که توسعهدهنده بتواند به راحتی کدها، تنظیمات و منابع پروژه را مدیریت کند. |
| 4 | + |
| 5 | +--- |
| 6 | + |
| 7 | +## 1. `app/` |
| 8 | +- **هسته اصلی برنامه** |
| 9 | +- شامل منطق اصلی پروژه مانند مدلها، کنترلرها، Middleware و ... |
| 10 | +- زیرپوشههای مهم: |
| 11 | + - **`Http/`** → کنترلرها، میدلورها و Request ها. |
| 12 | + - **`Models/`** → مدلها برای ارتباط با دیتابیس. |
| 13 | + - **`Console/`** → دستورات Artisan. |
| 14 | + - **`Providers/`** → سرویسپراوایدرها. |
| 15 | + |
| 16 | +--- |
| 17 | + |
| 18 | +## 2. `bootstrap/` |
| 19 | +- شامل فایلهای راهاندازی اولیه لاراول. |
| 20 | +- `app.php` هسته برنامه را آماده اجرا میکند. |
| 21 | +- پوشه `cache/` برای کش مسیرها و تنظیمات. |
| 22 | + |
| 23 | +--- |
| 24 | + |
| 25 | +## 3. `config/` |
| 26 | +- همه **تنظیمات پروژه** اینجاست. |
| 27 | +- مثال: `app.php`, `database.php`, `mail.php` و ... |
| 28 | +- مقادیر `.env` از اینجا به پروژه تزریق میشود. |
| 29 | + |
| 30 | +--- |
| 31 | + |
| 32 | +## 4. `database/` |
| 33 | +- مدیریت دیتابیس: |
| 34 | + - **`migrations/`** → ساخت جداول. |
| 35 | + - **`factories/`** → ساخت داده تستی. |
| 36 | + - **`seeders/`** → داده اولیه. |
| 37 | + |
| 38 | +--- |
| 39 | + |
| 40 | +## 5. `public/` |
| 41 | +- تنها پوشه قابل دسترسی مستقیم از وب. |
| 42 | +- شامل: |
| 43 | + - `index.php` → ورودی اصلی برنامه. |
| 44 | + - فایلهای استاتیک (CSS, JS, تصاویر). |
| 45 | + |
| 46 | +--- |
| 47 | + |
| 48 | +## 6. `resources/` |
| 49 | +- شامل منابع خام پروژه: |
| 50 | + - **`views/`** → قالبهای Blade. |
| 51 | + - **`lang/`** → فایلهای زبان. |
| 52 | + - **`css/`, `js/`** → کدهای فرانتاند. |
| 53 | + |
| 54 | +--- |
| 55 | + |
| 56 | +## 7. `routes/` |
| 57 | +- تعریف مسیرها: |
| 58 | + - `web.php` → مسیرهای وب. |
| 59 | + - `api.php` → مسیرهای API. |
| 60 | + - `console.php` → مسیرهای Artisan. |
| 61 | + - `channels.php` → مسیرهای Broadcast. |
| 62 | + |
| 63 | +--- |
| 64 | + |
| 65 | +## 8. `storage/` |
| 66 | +- محل ذخیرهسازی فایلهای تولیدشده توسط برنامه: |
| 67 | + - **`app/`** → فایلهای آپلودی. |
| 68 | + - **`framework/`** → کشها و سشنها. |
| 69 | + - **`logs/`** → لاگهای برنامه. |
| 70 | + |
| 71 | +--- |
| 72 | + |
| 73 | +## 9. `tests/` |
| 74 | +- تستهای Unit و Feature. |
| 75 | + |
| 76 | +--- |
| 77 | + |
| 78 | +## 10. سایر فایلها: |
| 79 | +- **`vendor/`** → پکیجهای Composer. |
| 80 | +- **`.env`** → تنظیمات محیطی. |
| 81 | +- **`artisan`** → ابزار خط فرمان لاراول. |
| 82 | +- **`composer.json`** → لیست پکیجها. |
| 83 | +- **`package.json`** → پکیجهای جاوااسکریپت. |
| 84 | + |
| 85 | +--- |
| 86 | + |
| 87 | +## 📌 نتیجهگیری |
| 88 | +لاراول با این ساختار پوشهای منظم، مدیریت پروژه را ساده و سریع میکند. آشنایی کامل با این ساختار باعث میشود در توسعه و نگهداری کدها عملکرد بهتری داشته باشید. |
0 commit comments