Mohamed Sabil 83

مدونة تقنية لكل المهتمين بتطوير المواقع الإلكترونية وأنظمة الويب

Laravel - Vue - Tailwind

صدور لارافيل 8

صدور لارافيل 8

صدرت لارافيل 8 بتاريخ 08-09-2020 مصحوبة بالعديد من المميزات والتغييرات الجديدة أهمها:

Laravel Jetstream

تعتبر Laravel Jetstream والتي أتت مع صدور لارافيل 8 كنوع من التطويرات الجديدة على واجهة المستخدم التي كانت تأتي مع الإصدارات السابقة من لارافيل. فهي تعتبر نقطة بداية للمشاريع الجديدة موفرة عدد من الواجهات الأساسية هي (الدخول، إنشاء حساب، تأكيد الإيميل، التحقق الثنائي، إدارة الجلسات، إضافة إلى إدارة الفرق).

Models Directory

ابتداء من لارافيل 8 أصبحت الـ models تأتي في مجلد خاص بها فمثلا في الإصدارات ما قبل 8 كان مسار موديل المستخدم هو `app` أما الآن فقد أصبح `app/Models`. وعلى الرغم من ذلك فإن لارافيل 8 إذا لم يجد مجلد Models فإنه سيعتبر المطور يرغب بالعمل حسب النظام القديم وبالتالي سيقوم بحفظ أي models جديدة في مجلد `app`.

Job Batching

أتاحت لارافيل 8 خاصية جديدة خاصة بتجميع الوظائف job والتي تسمح بتنفيذ مجموعة من المهام بسهولة مع إمكانية القيام بعدد من الإجراءات بعد التحقق من سلامة اكتمال تلك المهام أو تنفيذ إجراءات أخرى في حالة فشل واحدة أو أكثر منها.

use App\Jobs\ProcessPodcast;
use App\Podcast;
use Illuminate\Bus\Batch;
use Illuminate\Support\Facades\Batch;
use Throwable;

$batch = Bus::batch([
new ProcessPodcast(Podcast::find(1)),
new ProcessPodcast(Podcast::find(2)),
new ProcessPodcast(Podcast::find(3)),
new ProcessPodcast(Podcast::find(4)),
new ProcessPodcast(Podcast::find(5)),
])->then(function (Batch $batch) {
// All jobs completed successfully...
})->catch(function (Batch $batch, Throwable $e) {
// First batch job failure detected...
})->finally(function (Batch $batch) {
// The batch has finished executing...
})->dispatch();

return $batch->id;

Model Factory Classes

ابتداء من لارافيل 8 تم إعادة كتابة منشئات البيانات factories لتكون جزءً من الـ models مع تحسينات داعمة للعلاقات بين الـ models، وهذا جعل من عملية التغذية التلقائية للبيانات لأغراض فحص الكود أسرع.

// Before Laravel 8

$users = factory(App\User::class, 5)->create();

// Laravel 8

$users = User::factory()->count(5)->create();

Dynamic Blade Components

امتدادا للتطوير الذي أتى مع لارافيل 7 والخاص بمحرك القوالب blade، فقد وفرت لارفيل 8 خاصية جديدة تسمح بعرض أي من المكونات برمجيا أثناء وقت التشغيل، حيث وفرت لارافيل 8 العلامة `< x-dynamic-component/>` للقيام بعملية عرض المكون:

< x-dynamic-component :component="$componentName" class="mt-4" />

ولمعرفة بقية التطويرات والتحسينات التي أتت مع لارافيل 8 يمكنك زيارة الرابط الرسمي.

 

الكلمات المفتاحية laravel لارافيل 8 صدور لارافيل 8 laravel 8 release