Halo teman-teman semuanya, selamat datang di seri "Tutorial Laravel 11 untuk Pemula", pada seri kali ini kita akan membahas Tutorial Laravel 11 yang ditujukan untuk pemula.
Laravel merupakan salah satu framework PHP paling populer di dunia, yang sekarang sudah update menjadi versi 11 dengan beberapa perubahan dan fitur baru. Dalam artikel pertama pada seri ini, kita akan membahas perubahan dan fitur baru yang dihadirkan Laravel 11. Update ini dirancang untuk membuat pengembangan aplikasi lebih cepat, efisien, dan modern.
Tanggal Rilis Laravel 11
Laravel 11 dirilis pada 6 Februari 2024 lalu (sesuai Support Policy Laravel). Seperti biasanya, Laravel menggunakan metode Semantic Versioning untuk rilis besar setiap tahun, memastikan framework tetap up-to-date dengan teknologi terbaru.
Apa yang Baru di Laravel 11?
1. Minimum PHP 8.2
Laravel 11 sekarang memerlukan PHP versi 8.2 atau lebih tinggi. Dengan demikian, aplikasi yang dibuat dengan laravel 11 akan mendapatkan keuntungan dari fitur-fitur terbaru PHP, seperti readonly
properties dan peningkatan performa pastinya.
2. Struktur Aplikasi Lebih Minimalis
Laravel 11 hadir dengan struktur aplikasi yang lebih ramping. Banyak file yang dianggap redundant telah dihapus untuk mempercepat pengembangan dan mempermudah navigasi.
Struktur Baru di Laravel 11:
app/ |--- Http/ | |--- Controllers/ | |--- Controller.php |--- Models/ | |--- User.php |--- Providers/ | |--- AppServiceProvider.php routes/ |--- web.php
Beberapa perubahan utama:
EncryptCookies
,PreventRequestsDuringMaintenance
,TrustHosts
, dan beberapa middleware lainnya telah dihapus.- File
routes/console.php
tidak ada lagi. Sekarang, perintah console langsung dihandle oleh console kernel. bootstrap/app.php
hanya memiliki 3 baris kode sekarang.
3. Trait Dumpable untuk Debugging
Laravel 11 menambahkan Trait Dumpable yang memungkinkan kamu untuk menggunakan metode dump()
dan dd()
langsung pada objek. Ini sangat berguna untuk debugging.
Contoh:
use Illuminate\Support\Traits\Dumpable; class Student { use Dumpable; } $student = new Student(); $student->dump();
4. Metode casts()
untuk Model
Sekarang, kamu bisa mendefinisikan casting langsung melalui metode casts()
di dalam model.
Sebelum (Versi Lama):
protected $casts = [ 'role' => UserRole::class, ];
Sekarang (Versi Baru):
protected function casts(): array { return [ 'role' => UserRole::class, ]; }
5. Penghapusan File Config Default
Beberapa file konfigurasi tidak lagi disertakan secara default di Laravel 11. Sebagai gantinya, lebih banyak variabel ditambahkan ke file .env
.
Cara Memunculkan Kembali File Config:
php artisan config:publish
6. Penamaan Migrasi yang Lebih Sederhana
Penamaan file migrasi di Laravel 11 sekarang lebih singkat dan mudah dibaca.
Sebelum (Versi Lama):
2024_01_01_000000_create_users_table.php
Sekarang (Versi Baru):
0001_create_users_table.php
7. Penghapusan Kernel Console
Di Laravel 11, file Console Kernel
dihapus. Kamu bisa langsung mendeklarasikan perintah di console seperti ini:
php artisan make:command TestCommand