لاراول ۶ به تازگی منتشر شده است

تیم توسعه دهنده فریم ورک لاراول به تازگی نسخه ۶ لاراول را منتشر کرده است که اکنون در دسترس همگان است.


در نسخه ۶ این فریم ورک سعی شده است که مشکلات موجود در نسخه ۵.۸ به صورت کامل برطرف شود. این نسخه قابلیت‌های مهمی مانند سازگاری با Laravel Vapor، بهبود عملکرد پاسخ‌های تخصیص مجوز، استفاده از job middleware، کالکشن‌های lazy و بهبود عملکرد sub-queryها را فراهم کرده است.

در مقاله امروز لیداوب، برخی از ویژگی‌های جدید لاراول 6 را مورد بررسی قرار داده‌ایم که در ادامه مقاله به آن‌ها پرداخته شده است.

لاراول ۶ به صورت LTS منتشر شده است

Laravel 6.0 به صورت نسخه LTS منتشر شده است، به این معنا که تیم توسعه دهنده تا تاریخ 3 سپتامبر 2021 برای رفع اشکالات و باگ‌ها و تا تاریخ 3 سپتامبر 2022 برای رفع مشکلات امنیتی از آن پشتیبانی خواهند کرد.

در جدول زیر نسخه‌ها و تاریخ انتشار آخرین ورژن‌های فریم ورک لاراول آورده شده است:

نسخهانتشارمدت زمان رفع باگمدت زمان رفع باگ امنیتی
V1June 2011
V2September 2011
v3February 2012
v4May 2013
5.0Feb 4th, 2015Aug 4th, 2015Feb 4th, 2016
5.1 (LTS)Jun 9th, 2015Jun 9th, 2017Jun 9th, 2018
5.2Dec 21st, 2015Jun 21st, 2016Dec 21st, 2016
5.3Aug 23rd, 2016Feb 23rd, 2017Aug 23rd, 2017
5.4Jan 24th, 2017Jul 24th, 2017Jan 24th, 2018
5.5 (LTS)Aug 30th, 2017Aug 30th, 2019Aug 30th, 2020
5.6Feb 7th, 2018Aug 7th, 2018Feb 7th, 2019
5.7Sep 4, 2018Feb 4th, 2019Sep 4th, 2019
5.8Feb 26th, 2019Aug 26th, 2019Feb 26th, 2020
6.0 (LTS)Sept 3rd, 2019Sept 3rd, 2021Sept 3rd, 2022

در لاراول ۶ Semantic Versioning ویژگی

مقالات مرتبط:

نسخه ۵.۶.۲۰ لاراول منتشر شد!

لاراول 5.8 منتشر شد

جالب است بدانید که سازندگان لاراول، نسخه ۶ لاراول را به صورت روش نسخه بندی semantic versioning منتشر کرده‌اند. این قابلیت باعث می‌شود که این فریم ورک با پکیج‌هایی که قبلا از این سیستم نسخه بندی استفاده می‌کردند، سازگاری کامل داشته باشد.

صفحه خطای Ignition در لاراول ۶

لاراول ۶ به صورت پیش‌فرض شامل یک صفحه Ignition است که یک صفحه exception متن باز محسوب می‌شود. 

بهبود عملکرد پاسخ‌های تخصیص مجوز در لاراول ۶

پیش از این، تولید پیا‌م‌های خطای سفارشی در طول عملیات تخصیص مجوز (Authorization) برای کاربر نهایی کمی دشوار بود. لاراول ۶ یک متد Gate::inspect فراهم کرده است که پاسخ policy احراز هویت را ارائه می‌‌دهد:

$response = Gate::inspect('view', $flight);

if ($response->allowed()) {
// User is authorized to view the flight...
}

if ($response->denied()) {
echo $response->message();
}

قابلیت Job Middleware در لاراول ۶

Job Middleware یکی از ویژگی‌های مهم لاراول ۶ است که امکان اجرای Jobها از طریق میدلور را فراهم می‌کند:

// Add a middleware method to a job class
public function middleware()
{
return [new SomeMiddleware];
}

// Specify middleware when dispatching a job
SomeJob::dispatch()->through([new SomeMiddleware]);

این میدلور به شما کمک می‌کند تا از تولید منطق سفارشی در بدنه متد handle() مربوط به Job خود جلوگیری کنید. 

کالکشن‌های تنبل (Lazy Collections) در لاراول ۶

کالکشن Lazy برای کار با کالکشن‌های بزرگ از داده‌ها از جمله کالکشن‌های مدل Eloquent ارائه شده است. کلاس جدید Illuminate \ Support \ LazyCollection به مولدهای PHP کمک می‌کند تا مصرف حافظه را در هنگام کار با داده‌های بزرگ کم کند. اطلاعات بیشتر در مورد این قابلیت جدید را می‌توانید در این لینک مشاهده کنید.

بهبود عملکرد sub-query ها در لاراول ۶

لاراول ۶ متدهای جدید زیادی را برای کار با sub-query های پایگاه داده ارائه کرده است.

ویژگی Laravel UI در لاراول ۶

ساختارهای فرانت اندی که در نسخه‌های 5.x به همراه فریم ورک لاراول ارائه می‌شدند، اکنون در یک پکیج کامپوزر جداگانه laravel/ui قرار گرفته‌اند.
برای مثال، اگر می‌خواهید ساختار Bootstrap/Vue/ قدیمی را اجرا کنید، بایستی دستور زیر را اجرا کنید:

composer require laravel/ui
php artisan ui vue –auth

ایجاد اپلیکیشن

با ابزار CLI در لاراول و با استفاده از دستور زیر می‌توانید یک اپلیکیشن جدید در لاراول ۶ ایجاد کنید:

laravel new my-app

فرا بگیرید:

آموزش پایه لاراول

در این مقاله کوتاه به ویژگی‌های جدید لاراول ۶ به صورت اختصاری پرداخته شد. با مقاله‌های آتی لیداوب همراه باشید تا با هر یک از این قابلیت‌های جدید به صورت کامل آشنا شوید.