
بررسی ساختار لاراول Laravel - توضیح دایرکتوری های لاراول
برای اینکه بتوانید راحت تر با لاراول کار کنید خوب است که از ساختار لاراول مطلع باشید.
ساختاری که بطور پیشفرض، لاراول برای توسعه دهندگان بعد از نصب آن ارائه می دهد می تواند مورد استفاده برنامه های کوچک و یا بزرگ قرار بگیرد. البته شما میتوانید یک ساختار دایرکتوری مطابق میل خود داشته باشید و محدودیتی برای محل قرار گرفتن کلاس ها ( تا وقتی که کامپوزر بتواند آنها را بارگزاری کند) ، ندارید .
همانطور که در عکس می بینید بعد از نصب لاراول ما چنین ساختاری را برای پروژه خود خواهیم داشت :
برای تجزیه و تحلیل این پوشه ها در ادامه با ما همراه باشید.
دایرکتوری APP
پوشه APP پوشه اصلی برنامه می باشد. و تقریبا تمام فایل های اصلی و هسته برنامه داخل این پوشه میباشد. بطور پیشفرض namespace ی که لاراول برای این دایرکتوری قرار داده است APP میباشد. این پوشه شامل پوشه های مختلف دیگری نیز هست که به بیان آن می پردازیم.
دایرکتوری console
Console شامل تمام دستورات آرتیسان مورد نیاز لاراول است. و شامل پوشه commands و فایل kernel.php نیز میباشد که دستورات اعلام شده در Inspire.php را فراخوانی می کند.
اگر ما در لاراول نیاز به فرمان خاصی داشته باشیم میتوانیم تغییرات لازم را در این فهرست ایجاد کنیم.
دایرکتوری Events
در حالت پیشفرض بعد از نصب لاراول این پوشه وجود ندارد . اگر تمایل دارید تا از از event ها یا رویدادها استفاده کنید می توانید بوسیله دستورات event:generate و make:event این پوشه را ایجاد کنید .
این پوشه شامل کلاس های رویداد ها میباشد.رویدادها استفاده های زیادی دارند مانند هدایت فعالیت ها، افزایش خطاها یا اعتبارسنجی لازم و انعطاف پذیری بیشتر ، و می توانند برای هشدار دادن به سایر قسمت های برنامه مورد استفاده قرار میگیرند.
لاراول همه رویدادها را در پوشه events قرار می دهد و فایل پیش فرض event.php شامل رویدادهای اساسی اعلام شده است.
دایرکتوری Exceptions
تمام exception ها و استثناهای برنامه در این پوشه قرار می گیرد. همچنین شامل فایل handel.php هست که تمام استثناهای برنامه را handel و مدیریت می کند.
دایرکتوری Http
پوشه Http شامل پوشه های controller ها ، middleware ها و درخواست های اپلیکیشن است. همانطور که می دانید لاراول از الگوی طراحی MVC پیروی میکند. این پوشه شامل model و controller ها و view هایی هستند که برای دایرکتوری های خاصی تعریف شده اند.
پوشه middleware یک میان افزار است که مکانیزم فیلتر و ارتباط بین درخواست ها و پاسخ را شامل می شود.
پوشه Requests شامل تمام درخواست های برنامه می باشد.
دایرکتوری jobs
درحالت پیش فرض بعد از نصب لاراول این پوشه وجود ندارد. برای داشتن این پوشه میتوان با وارد کردن دستور آرتیسان make:job این پوشه را ایجاد نمود.
این دایرکتوری شامل تمام job های صف بندی شده در برنامه است و مانند یه سقف ،دربرگیرنده تمام آنها است.
دایرکتوری Listeners
در حالت پیشفرض و بعد از نصب لاراول این پوشه وجود ندارد. اما می توان با اجرا کردن دستور event:generate یا make:listener آرتیسان این پوشه را اضافه نمود . Listener ها وابسته به event ها هستند و شامل متدهایی هستند که eventها و exception ها را مدیریت می کنند . Event listeners یا شنوندگان رویداد بعد از اتفاق افتادن یک رویداد در پاسخ به آن رویداد ، یک کار خاص و از پیش تعیین شده ای را اجرا می کنند. بطور مثال بعد از رویداد event شنونده رویداد LoginListener اجرا میشود.
دایرکتوری Policies
در حالت پیشفرض و بعد از نصب لاراول این پوشه وجود ندارد. اما میتوان با اجرا کردن دستور make:policy آرتیسان این پوشه را اضافه نمود . این پوشه شامل کلاس هایی برای تولید سیاست های مجوز دهی برای برنامه است.
دایرکتوری Providers
این پوشه تمام ارئه دهندگان خدمات مورد نیاز برای ثبت رویدادهای برنامه را شامل می شود.
دایرکتوری Bootstrap
این پوشه شامل تمام فایل های راه انداز برنامه می باشد. این دایرکتوری شامل پوشه cache است و شامل تمام فایل های لازم برای کش کردن یک برنامه وب می باشد. همچنین این دایرکتوری شامل فایل راه انداز app.php برای راه اندازی فریمورک می باشد.
دایرکتوری config
این پوشه شامل تمام فایل های پیکر بندی و تنظیمات و پارامترهای مربوط به کارکرد صحیح یک برنامه لاراول می باشد.در تصویر زیر می توانید فایلهای موجود دراین دایرکتوری را ببینید. قابل ذکر است که نام فایلها با عملکرد آنها مرتبط میباشد.
دایرکتوری database
همانطور که از آن پیداست این دایرکتوری شامل پارامترهای مختلف برای مدیریت پایگاه داده است. که شامل سه زیر پوشه است :
Seeds - شامل کلاس هایی برای تست دیتابیس میباشد.
Migrations – بوسیله مایگریشن ها میتوان براحتی جدول های دیتابیس خود را طراحی کرده و آنها را مدیریت کنید.
Factories – بوسیله factoryها می توان براحتی داده های ساختگی برای مدل های برنامه ایجاد کرد.
دایرکتوری public
این پوشه شامل فایل ها و پوشه های زیر است:
.htaccess – بوسیله این فایل یکسری تنظیمات به سرورمون اعمال میکنیم.
javascript and css – در دایرکتوری public همچنین asset های برنامه مانند javascript و یا css قرار میگیرد.
index.php – این فایل برای راه اندازی برنامه ، لازم و حیاتی و اولین نقطه برای درخواستهای وارد شده به برنامه است.
دایرکتوری resources
این دایرکتوری برای بهبود هر چه بیشتر برنامه وب شما می باشد و شامل فولدر ها و فایل هایی هست که در اینجا بیان میکنیم :
assets - این پوشه حاوی فایل های کامپایل نشده LESS و SCSS بوده که برای استایل دهی برنامه مورد نیاز میباشند
lang - فایل های مر بوط به زبان برنامه در این دایرکتوری قرار می گیرد.
views - ویو ها یکی از نقش های اصلی در معماری mvc را بازی می کنند که شامل فایلهای html و template ها هستند که با کاربر تعامل ایجاد می کنند.
دایرکتوری storage
در این دایرکتوری فایل هایی که در جریان پروژه توسط لاراول کامپایل یا ساخته میشوند قرار میگیرد. مثلا فایلهای مربوط به cache یا log های برنامه و یا قالب blade که کامپایل شده است .
این دایرکتوری شامل دایرکتوری های زیر میباشد:
App - در این دایرکتوری هر فایلی که در جریان برنامه تولید شده است ، قرارمی گیرد.
Framework - این دایرکتوری برای ذخیره فایل ها و یا کش های ساخته شده در جریان پروژه استفاده میشود.
Logs - این دایرکتوری ، فایل ها ی Log فریمورک را در بر میگیرد.
دایرکتوری tests
در این دایرکتوری فایلهایی برای تست برنامه گنجانده میشود. مثلا ما می توانیم بطور پیش فرض با PhpUnit کار کنیم . فایلهای موردنظر برای تست را در این پوشه قرار می دهیم.
دایرکتوری vendor
این دایرکتوری تمام dependency ها یا وابستگی ها و پکیج های مربوط به کامپوزر را در بر میگیرد.
این فصل در یک نگاه:
آشنایی با امکانات جدید لاراول ۷…
برخی از سرفصل های این پکیج آموزشی : لاراول چیست و چرا ما لاراول استفاده میکنیم کامپوزر کارش چیه و نصب اون نصب لاراول آموزش نصب لاراول از طریق اینستالر آموزش نصب لاراول با استفاده ا…این فصل در یک نگاه:
بهترین و پر بازده ترین روش تبدیل بازدیدکننده سایت به مشتری تبلیغات هدفمند و برند سازی هوشمندانه با ایمیل می باشد. ایمیل…
وبینار(سمینار آنلاین) آموزش تکنیک های ایمیل مارکتینگ اگر تا انتها این متن را مطالعه کنید نظر شما در مورد ایمیل مارکتینگ 180 درجه عوض می شود!! بر هیچکس پوشیده نیست که از سال 1972 که ای…این فصل در یک نگاه:
مباحث تکمیلی فریم ورک لاراول…
فصل اول :آموزش مقدماتی فریم ورک لاراول معرفی فریم ورک لاراول و پیشنیازهای انجام کار انجام کانفیگ های اولیه برای نصب و راه اندازی فریم ورک معرفی روش های نصب پروژه لاراولی از طریق سایت گی…این فصل در یک نگاه:
مباحث مقدماتی فریم ورک react.js…
توضیحات کلی مجموعه: فصل اول : آشنایی با مباحث مقدماتی فریم ورک react.js نصب و راه اندازی node.js و کلیه پیش نیازهای لازم نصب فریم ورک react روی لوکال و انجام تست های لازم آغاز آشنایی …