در لاراول ۸ چه چیزهای جدید اضافه شده است؟
نسخه ی ۸ فریمورک لاراول آخرین نسخه ی این فریمورک قدرتمند است که در ۸ سپتامبر منتشر شده است. فریمورک laravel نسخه ی ۸ به همراه ویژگی ها و ابزارهای جدید هیجان انگیزی منتشر شده است.
در این مقاله ی آموزشی قصد داریم ۱۵ ابزار یا ویژگی جدیدی که به لاراول اضافه شده است را بررسی کنیم پس با دقت ادامه ی این مقاله ی آموزشی را مطالعه فرمایید.
۱ − مسیر جدید app/Models در لاراول
در لاراول نسخه ی ۸ ، زمانی که دستور artisan:make model را اجرا کنید ، مدل ها در مسیر app/Models ساخته میشود. قبلتر مدل های لاراول در مسیر app خالی ساخته میشد و همین مورد باعث اعتراض بعضی از کاربران لاراول شده بود . سازنده ی اصلی لاراول یعنی تیلو اوتول در پاسخ به درخواست کاربران این امکان را اضافه کرده است که البته شما میتوانید با حذف کردن مسیر Models به روال قبلی باز گردید و در این صورت فایل های مدل مثل روال قبلی درون فولدر app ساخته میشوند.
این یکی از ویژگی های خوب فریمورک لاراول است که سریعا به درخواست کاربران پاسخ میدهد.
البته این مورد بیشتر بخاطر mvc بود چون مسیر هر سه model view controller مشخص باشد.
۲ − صفحه ی ابتدایی جدید در لاراول ۸
زمانی که لاراول ۸ بصورت تازه نصب میشود صفحه ی خوش آمدگویی کاملا عوض شده و یک صفحه ی جدید مشاهده خواهید کرد.
صفحه ی خوش آمدگویی لاراول در نسخه ی ۸ کاملا بازسازی شده و هم اکنون از TailwindCSS استفاده میکند.
۳ - Namespac مربوط به کنترلرها در route
در نسخه های قبلی لاراول RouteServiceProvider دارای یک attribute به نام namespace بود که در فایل route هنگام تعریف کنترلر ها بعنوان پیشوند استفاده میشد.
این پیشوند باعث مشکلاتی در لاراول شده بود که در نسخه ی ۸ حذف شده است و این مشکل دیگر پیش نخواهد آمد.
همچنین به شیوه ی زیر نیز میتوانید کنترلرها را درون فایل route صدا بزنید:
۴ − کش کردن route های لاراول
لاراول از نسخه ی ۵ به بعد از سیستم کش کردن route ها استفاده میکند این سیستم باعث افزایش پرفرمنس سایت های لاراولی شده است . در لاراول نسخه ی ۸ امکان استفاده از سیستم کش route ها حتی با وجود استفاده از روت ها بصورت closure وجود دارد به مثال زیر دقت کنید :
۵ − Attribute های مربوط به کامپوننت های Blade
۶ − سینتکس بهتر برای Event Listening
۷ − Queueable Anonymous Event Listeners در لاراول ۸
در لاراول نسخه ی ۸ توابع closure بصورت صف بندی شده میتوانید بسازید این کار یک صف از anonymous event listeners ایجاد میکند که در بک گراند پردازش میشود.
در نسخه ی ۸ این اتفاق برای ساده سازی استفاده انجام شده است و در نسخه های قبلی پیاده سازی این مورد سخت تر بود.
۹ − خطایابی صف های Closure لاراول
فریمورک لاراول یک سیستم قوی صف بندی یا همان queue system را دارد که یک closure queue را قبول میکند و در بک گراند مرتب سازی و پردازش میشود.
حالا در لاراول ۸ این امکان وجود دارد که خطاهای رخ داده را هندل کنید تصویر زیر را ببینید :
۱۰ − تابع Backoff برای job های لاراول
این یک الگوریتم است که rate مربوط به job شما در لاراول را کاهش میدهد. به تصویر زیر دقت کنید.
اکنون در نسخه ی ۸ لاراول این قابلیت وجود دارد که برای job هایی که با API های خارجی سر و کار دارد مفید است.
۱۱ − Job Batching در لاراول نسخه ی ۸
job batching هندل کردن job ها در لاراول را بسیار راحت تر میکند . ارسال نوتیفیکشن زمان اتمام یک job یا زمان بروز خطا از ویژگی های این است برای اطلاعات بیشتر به این پول رکوئست گیتهاب لاراول مراجعه کنید.
۱۲ − Rate Limiting در لاراول ۸
Rate limiting در لاراول ۸ یک روش راحت و آسان را برای محدود کردن route های لاراول فراهم میکند.
۱۳ − Schema Dumping در لاراول هشت
Schema Dumping روشی برای جمع آوری مایگریشین های لاراول در یک فایل واحد است. این سیستم یک فایل schema برای پایگاه کلی شما تولید میکند . این سیستم برای ادغام کردن دیگر توسعه دهندگانی که فایل های مایگریشین دارند مفید است و از دیتابیس های MySQL, Postgres, SQLite ساپورت میکند.
۱۴ − توابع Factory برای مدل های لاراول
در نسخه ی ۸ لاراول factory ها برای مدل ها مجددا ساخته شده تا براساس کلاس باشند . برای هر مدل در لاراول یک کلاس factory نیز وجود دارد.
۱۵ − پکیج Jetstream در لاراول ۸
پکیج jetstream که به لاراول ۸ اضافه شده است scaffolding جدید به لاراول اضافه میکند که از TailwindCSS برای طراحی استفاده کرده است تمام چیزهای ابتدایی شامل ثبت نام ورود و ... در این پکیج گنجانده شده است.
استاد میشه لطفا در مورد postCss هم صحبت کنید؟
بله حتما در قسمت مقالات مقاله ی اموزشی در موردش قرار خواهیم داد