دوره های آموزشی آکادمی پی وی لرن (پروژه محور و ویژه بازار کار)



  • ۱۲
  • اسفند

جلسه ۰۳ : ساختار برنامه در لاراول

  • دسته‌بندی‌ها :
جلسه ۰۳ : ساختار برنامه در لاراول
    • جزئیات
    • نوع محتواآموزش تصویری

      مقدمه

      با عرض سلام خدمت کاربران عزیز سایت پی وی لرن و کاربرانی که دوره کامل آموزش لاراول را دنبال می کنند، با آموزش لاراول در جلسه ۰۴ در خدمت شما عزیزان هستیم، در این جلسه قصد داریم تا شما را با ساختار برنامه در لاراول آشنا کنیم، در ادامه این مبحث به طور خلاصه مباحثی نظیر کنسول، رویدادها، http  jobs و … را در توضیحات ساختار برنامه در laravel بررسی خواهیم کرد.

      ساختار برنامه در لاراول

      ساختار برنامه در laravel اساسا ساختار پوشه ها، زیر پوشه ها و فایل های موجود در یک پروژه است. ساختار برنامه در laravel به این صورت است که هنگامی که ما یک پروژه در لاراول ایجاد می کنیم، ما یک مرور کلی از ساختار برنامه را می بینیم که در تصویر نشان داده شده است.

      در اینجا به پوشه ریشه لاراول یعنی laravel-project اشاره دارد.

      این شامل زیر پوشه ها و فایل های مختلف است. تجزیه و تحلیل پوشه ها و فایل ها همراه با جنبه های کاربردی آن در زیر ارائه شده است.

      نمونه ساختار برنامه در laravel :

      برنامه

      ساختار برنامه در laravel

      این پوشه برنامه است و شامل کل کد منبع پروژه می باشد. که شامل وقایع، استثنا و اعلام میان افزار است. پوشه برنامه شامل پوشه های مختلف زیر است که در زیر توضیح داده شده است.

      کنسول

      کنسول شامل دستورات دستیار لاراول است. این شامل یک پوشه به نام Commands است که در آن تمام دستورات با امضای مناسب اعلام شده است.

      فایل Kernal.php دستورات اعلام شده در Inspire.php را فراخوانی می کند.

       

      اگر ما نیاز به یک فرمان خاص در لاراول داریم، پس باید تغییرات لازم را در این فهرست انجام دهیم.

      events

      این پوشه شامل تمام رویدادهای پروژه می باشد.

      رویدادها برای هدایت فعالیت ها، افزایش خطاها یا اعتبارسنجی لازم و انعطاف پذیری بیشتر استفاده می شود.

      لاراول همه رویدادها را زیر یک پوشه نگه می دارد. فایل پیش فرض شامل event.php است که همه رویدادهای اصلی در آن اعلام شده است.

      exeptions

      این پوشه حاوی تمام روش های مورد نیاز برای رسیدگی به استثناء است.

      همچنین شامل فایل handle.php است که تمام استثنائات را مدیریت می کند.

      http

      پوشه Http دارای زیر پوشه هایی برای کنترل کننده ها، میان افزار ها و درخواست های برنامه است.

      همانطور که Laravel از الگوی طراحی MVC پیروی می کند، این پوشه شامل مدل، کنترل کننده ها و نمایش هایی است که برای دایرکتوری های خاص تعریف شده اند.

      زیر پوشه Middleware شامل مکانیزم میان افزار است که شامل مکانیزم فیلتر و ارتباط بین پاسخ و درخواست است.

      زیر پوشه Middleware شامل مکانیزم میان افزار است که شامل مکانیزم فیلتر و ارتباط بین پاسخ و درخواست است.
      Sub-folder شامل تمام درخواست های برنامه می شود.

      Jobs

      دایرکتوری مشاغل، فعالیت های Laravel را حفظ می کند. کلاس پایه در میان تمام مشاغل تقسیم می شود و یک مکان مرکزی برای قرار دادن آنها در زیر یک سقف قرار می دهد.

      Listeners

      وابسته به رویداد هستند و شامل روش هایی هستند که برای رسیدگی به رویدادها و استثناها استفاده می شوند.

      به عنوان مثال، رویداد ورود شامل یک رویداد LoginListener است.

      Policies

      سیاست ها، کلاس های PHP هستند که شامل منطق مجوز هستند. Laravel شامل یک ویژگی برای ایجاد تمام منطق مجوز در کلاس های سیاست در داخل این زیر پوشه است.

      Providers

      این پوشه شامل همه ارائه دهندگان خدمات مورد نیاز برای ثبت رویدادها برای سرورهای اصلی و پیکربندی برنامه Laravel است.

      Bootstrap

      این پوشه تمام اسکریپت های بوت استرپ برنامه را محصور می کند. این شامل یک زیر پوشه یعنی حافظه پنهان است که شامل تمام فایل های مربوط به ذخیره سازی یک برنامه وب است. شما همچنین می توانید فایل app.php را پیدا کنید که ابتدا اسکریپت هایی را که لازم است را برای بوت استرپ در نظر گرفته است.

      Config

      پوشه پیکربندی شامل پیکربندی های مختلف و پارامترهای مربوطه برای کارکرد صحیح یک برنامه Laravel مورد نیاز است.

      فایل های مختلف موجود در پوشه پیکربندی همانطور که در تصویر نشان داده شده است.

      نام فایل ها به عنوان عملکرد مربوط به آنها کار می کنند.

      Database

      همانطور که از نام آن پیداست، این فهرست شامل پارامترهای مختلف برای ویژگی های پایگاه داده است.که شامل سه زیر فهرست به شرح زیر است.

      Seeds : این شامل کلاس هایی است که برای پایگاه داده تست واحد استفاده می شود.

      Migrations : این پوشه برای پرس و جو برای مهاجرت پایگاه داده مورد استفاده در برنامه وب کمک می کند.

      Factories : این پرونده برای تولید تعداد زیادی سوابق داده استفاده می شود.

      Public

      این پوشه ریشه است که کمک می کند تا در مقداردهی اولیه برنامه Laravel کمک کند. این شامل فایل ها و پوشه های زیر است:
      htaccess : این فایل تنظیمات سرور را می دهد.
      javascript and CSS : این فایل ها به عنوان دارایی محسوب می شوند.
      index.php : این فایل برای راه اندازی یک برنامه وب مورد نیاز است.

      Resources

      دایرکتوری منابع حاوی فایل هایی است که برنامه وب شما را افزایش می دهد.
      زیر پوشه های موجود در این پوشه و هدف آنها در زیر توضیح داده شده است.
      assets : پوشه دارایی شامل فایل هایی مانند LESS و SCSS است که برای طراحی یک برنامه وب مورد نیاز است.
      lang : این پوشه شامل پیکربندی برای محلی سازی و یا internalization است.
      views : نمایش ها فایل ها یا قالب های HTML هستند که با کاربران نهایی ارتباط برقرار می کنند و نقش اصلی را در معماری MVC بازی می کنند.
      توجه داشته باشید که به جای داشتن یک پوشه دارایی دایرکتوری منابع، مسطح خواهد شد. نمایش تصویری آن در زیر نشان داده شده است.

      Storage

      این پوشه ای است که همه logs و فایل های لازم را که اغلب در هنگام اجرای پروژه Laravel مورد نیاز است، ذخیره می کند.

      زیرپوشه های موجود در این پوشه و هدف آنها در زیر آمده است.

      app : این پوشه حاوی فایل هایی است که به صورت متوالی نامیده می شوند.

      framework : شامل جلسات، cache و views است که frequently نامیده می شوند.

      logs :  همه استثناء ها و log ها در این زیر پوشه ردیابی می شوند.

      tests

      تمام موارد آزمایش واحد در این فهرست گنجانده شده است. کنوانسیون نامگذاری برای نامگذاری کلاس های آزمون، camel_case است و متعاقبا به عنوان عملکرد کلی کلاس، پیروی می کند.

      Vendor

      Laravel کاملا مبتنی بر وابستگی های Composer است، به عنوان مثال برای  نصب Laravel یا قرار دادن کتابخانه های شخص ثالث، و غیره.

      پوشه vendor شامل تمام وابستگی های Composer است.

      علاوه بر موارد فوق، Laravel همچنین شامل برخی از فایل های دیگر است که نقش اصلی را در ویژگی های مختلف مانند تنظیمات GitHub، بسته ها و کتابخانه های شخص ثالث بازی می کند.

      فایل های موجود در ساختار برنامه در زیر نشان داده شده اند.

      کلام آخر

      ساختار برنامه در لاراول ، می‌تواند نقطه شروع مناسبی برای ایجاد برنامه‌های کوچک و بزرگ لاراول باشد. شما در سازماندهی ساختار برنامه در لاراول خود، طبق چیزی که می‌خواهید آزاد هستید. در این فریم ورک، تا زمانی که کامپوزر بتواند کلاس‌ها را بارگذاری کند، لاراول تقریبا هیچ محدودیتی در مورد محل قرارگیری کلاس‌ها برای شما تعیین نمی‌کند.

      QR:  جلسه ۰۳ : ساختار برنامه در لاراول
      به اشتراک بگذارید