Laravel adalah kerangka kerja PHP terkemuka yang terkenal dengan sintaksisnya yang elegan, fitur-fitur canggih, dan alat yang ramah pengembang. Arsitekturnya mendukung pengembangan web PHP yang efektif, membantu Anda membangun aplikasi yang skalabel dan mudah dipelihara.

Di Kinsta, kami berkomitmen untuk selalu menjadi yang terdepan dan memanfaatkan teknologi terbaru. Dan memiliki pengalaman yang cukup dengan aplikasi Laravel, kami gembira dengan kemajuan yang disertakan dalam rilis terbarunya.

Laravel 11 memperkenalkan beberapa fitur transformatif yang meningkatkan produktivitas pengembang dan meningkatkan kinerja aplikasi. Dari konfigurasi yang disederhanakan dan proses debug hingga peningkatan fleksibilitas, versi ini meningkatkan efisiensi pengembangan dan membantu Anda membangun aplikasi yang lebih tangguh. Ayo selami!

Struktur direktori yang diubah di Laravel 11

Laravel 11 menyertakan struktur direktori yang didesain ulang yang meningkatkan efisiensi pengembangan. Perubahan ini menyederhanakan pengorganisasian file proyek dan mengurangi kode boilerplate yang disertakan dalam versi Laravel sebelumnya.

Menghapus direktori tertentu, seperti aplikasi/Pengecualian Dan app/Http/Middleware, menjadikan struktur Laravel 11 lebih bersih dari versi sebelumnya. Misalnya, versi sebelumnya menyertakan sembilan middleware, banyak di antaranya yang kemungkinan besar tidak dapat Anda sesuaikan. Menghilangkan direktori ini akan meminimalkan kerumitan kode dan memungkinkan Anda fokus pada aspek penting basis kode Anda. Dan jika perlu untuk menyesuaikan middleware, Anda dapat melakukannya melalui Penyedia Aplikasi/Layanan.

Laravel 11 juga menghapus konfigurasi folder, mengubah cara Anda mengelola konfigurasi. Kami akan kembali ke perubahan ini di bagian selanjutnya.

Keuntungan dari struktur direktori baru Laravel meliputi:

  • Dapat digunakan kembali kode — Dengan lebih sedikit kode boilerplate, Anda dapat fokus pada pembuatan komponen modular dan dapat digunakan kembali. Kemampuan untuk menggunakan kembali fungsionalitas umum di seluruh aplikasi mendorong proses pengembangan yang lebih efisien.
  • Peningkatan berbagi pengetahuan — Struktur direktori yang tidak terlalu rumit memfasilitasi pertukaran pengetahuan di antara anggota tim dan orang-orang yang menggunakan teknologi ini. Navigasi struktur produk yang lebih sederhana membuat kolaborasi menjadi lebih lancar dan efektif.
  • Mengurangi waktu pengkodean — Menghilangkan direktori dan file yang tidak perlu berarti pengembang menghabiskan lebih sedikit waktu bekerja dengan kode boilerplate yang tidak diperlukan. Pengkodean, debugging, dan pengujian yang lebih cepat menghasilkan peningkatan produktivitas.

Struktur direktori yang disederhanakan menawarkan proses pengembangan yang lebih baik dan memungkinkan implementasi fitur dan fungsi yang lebih cepat.

Fleksibilitas yang ditingkatkan dengan model cast

Laravel 11 sedang bertransisi ke model berbasis metode, mengubah cara Anda menangani atribut dalam a Model Laravel Fasih — representasi tabel database yang bertindak sebagai perantara interaksi dengan tabel tersebut.

Di Laravel versi lama, Anda mendefinisikan atribut menggunakan a properties Himpunan. Dengan Laravel 11, Anda menentukan pemeran model dalam metode yang diberi nama yang tepat casts().

Transisi ke model berbasis metode ini menawarkan beberapa keuntungan yang serupa dengan metode atau fungsi kode. Salah satu manfaat paling signifikan adalah penggunaan kembali kode. Menyertakan logika casting dalam metode membuat kode Anda lebih modular dan dapat digunakan kembali. Dan karena casts() metode menggambarkan casting atribut, kode Anda menjadi lebih mudah dibaca dan dipelihara.

Penting juga untuk dicatat bahwa Laravel 11 memastikan kompatibilitas dengan versi sebelumnya. Akibatnya, Anda dapat dengan mudah mentransisikan basis kode yang ada untuk menggunakan pendekatan casting model Laravel 11 yang diperbarui. Kompatibilitas ini membuat proses pengadopsian Laravel 11 menjadi lancar — terutama jika Anda sudah terbiasa dengan iterasi sebelumnya.

Konfigurasi yang disederhanakan

Seperti disebutkan sebelumnya, Laravel 11 membawa perubahan dalam manajemen konfigurasi. Ini menggabungkan pengaturan konfigurasi ke dalam satu sumber: the .env mengajukan. Ini adalah perubahan penting dari versi Laravel sebelumnya, yang menyebarkan konfigurasi ke banyak file.

Menempatkan konfigurasi hanya di .env file secara substansial meningkatkan organisasi. Ini juga menyederhanakan alur kerja pengembangan, menjadikannya lebih intuitif dan efisien.

Pembaruan penting terkait konfigurasi lainnya adalah fitur kaskade, yang dengannya Anda dapat menyempurnakan konfigurasi dengan menghapus opsi tidak perlu yang tidak ingin Anda sesuaikan. Hasilnya adalah pembangunan yang lebih kompak.

Tunggal .env file menghilangkan kebutuhan akan banyak file, alih-alih menyimpan semua konfigurasi yang relevan di satu tempat. Namun, jika Anda kebetulan merasakan hal tersebut .env file menjadi terlalu besar, Anda dapat menggunakan perintah untuk mengembalikan file konfigurasi ke konfigurasi direktori. Misalnya, php artisan config:publish auth menghasilkan auth.php berkas di konfigurasi direktori.

Kemampuan untuk mengambil konfigurasi tertentu merupakan keuntungan besar bagi organisasi.

Pengalaman proses debug yang disempurnakan dengan sifat Dumpable yang baru

Itu Dumpable trait adalah tambahan yang berharga untuk Laravel 11. Ini memungkinkan Anda menggunakan alat bantu debugging yang familiar di dalam kelas, termasuk dd() Dan dump() metode. Metode ini berperan penting selama proses debug karena memberikan wawasan real-time tentang objek atau variabel target.

Perhatikan bahwa Dumpable sifat tersebut kemungkinan besar akan menggantikan sifat yang sudah ada dd Dan dump metode dalam berbagai kelas inti Laravel, memastikan pengalaman debugging yang konsisten dan kohesif di seluruh kerangka kerja.

Inovasi penanganan rute Laravel 11

Laravel 11 sangat meningkatkan versi awal dengan penanganan rute yang terkonsolidasi. Ini mengurangi jumlah file rute default dari empat menjadi dua: rute.php Dan konsol.php. Perubahan ini berdampak karena meminimalkan kode boilerplate dan menjadikan kerangka kerja lebih intuitif.

Penting untuk diperhatikan jika Anda menginginkannya menggabungkan rute API ke dalam permohonan Anda, perubahan ini berarti Anda harus ikut serta secara sengaja. Mekanisme ini mendukung struktur aplikasi yang lebih bersih dan disesuaikan, hanya menyertakan rute API bila diperlukan. Untuk menghasilkan api.php file dan integrasikan Laravel Sanctum, jalankan php artisan install:api memerintah.

Penyiaran acara di Laravel 11 mengikuti paradigma serupa. Untuk mengaktifkan fungsionalitas dan membuat saluran.php file, jalankan &php artisan install:broadcasting. Ini mengatur pengaturan file dan konfigurasi penting, mempercepat integrasi penyiaran acara ke dalam aplikasi Laravel.

Secara kolektif, perubahan ini mendukung peralihan ke arah struktur aplikasi yang modular dan dapat disesuaikan. Karena Anda dapat memilih fitur tertentu, Laravel 11 menawarkan pendekatan yang lebih disesuaikan untuk merutekan manajemen file dibandingkan versi sebelumnya.

Evolusi kernel HTTP Laravel

Kernel Laravel telah menjadi komponen penting dalam kerangka kerja, bertindak sebagai titik masuk untuk permintaan HTTP dan perintah terminal. Ini telah mengatur aliran permintaan ini, mengelola tumpukan middleware, perutean, dan komponen penting lainnya yang berkontribusi pada penanganan aplikasi terhadap permintaan masuk.

Laravel 11 menghapus kernel Laravel. Sebaliknya, Anda menggunakan Bootstrap/App kelas, yang mengikat antarmuka penting ke dalam wadah. Setelah menyiapkan komponen-komponen yang diperlukan, Bootstrap/App kelas mengembalikan instance aplikasi. Pemisahan pembuatan instance dari eksekusi aplikasi dan penanganan respons menyediakan arsitektur yang lebih modular.

Menghapus kernel Laravel adalah langkah lain untuk meminimalkan kode boilerplate. Sebagai Bootstrap/App kelas menangani penyiapan penting, Anda dapat fokus membangun fungsi inti aplikasi Anda. Setelah contoh aplikasi berjalan, file Bootstrap/App kelas memastikan penanganan permintaan web yang diperlukan, menyederhanakan proses pengembangan dan mempromosikan basis kode yang lebih terorganisir.

Migrasi default terkonsolidasi untuk efisiensi

Dengan Laravel 11 hadir perombakan migrasi default. Versi sebelumnya, dari 2014 hingga 2019, mengalami banyak migrasi default yang tersebar di beberapa file. Sementara itu, rilis terbaru telah memadatkan file-file ini menjadi hanya dua, menawarkan pengalaman yang lebih terorganisir dan ramah pengguna kepada pengembang.

Pengurangan file migrasi default ini menyederhanakan akses dan pengelolaan migrasi yang dihasilkan, meningkatkan kejelasan struktur database Anda, dan mengurangi potensi kebingungan dan kesalahan.

Selain itu, dengan pengaturan migrasi default yang lebih bersih dan mudah, Anda dapat mengalokasikan lebih banyak waktu untuk fokus pada persyaratan spesifik proyek Anda daripada bergulat dengan kompleksitas file migrasi boilerplate.

Migrasi default Laravel 11 yang dioptimalkan berkontribusi pada pengalaman pengembangan yang lebih lancar, memperkuat reputasi kerangka kerja yang memprioritaskan kesederhanaan dan kemudahan penggunaan.

PHP 8.2: Standar baru untuk Laravel 11

Perubahan krusial lainnya pada Laravel 11 adalah setnya PHP 8.2 sebagai persyaratan minimumnya. Di Laravel 11, PHP 8.2 adalah defaultnya, dan PHP 8.3 akan segera hadir. Penyelarasan dengan kemajuan terkini dalam ekosistem PHP memastikan Laravel akan tetap kompatibel dengan fitur dan optimasi bahasa PHP terbaru (dan yang akan datang).

Dengan mendukung dua versi utama PHP terakhir, Laravel 11 meningkatkan kinerja, keamanan, dan pengalaman pengembang. Menjadikan PHP 8.2 sebagai persyaratan minimum akan membuktikan proyek Anda di masa depan dan membuka potensi penuh dari bahasa tersebut.

Ringkasan

Laravel 11 memperkenalkan pembaruan signifikan yang menjanjikan peningkatan pengalaman pengembangan bagi Anda, tim Anda, dan komunitas pengembang yang lebih luas. Peningkatan optimalisasi kinerja, peningkatan dukungan untuk versi PHP terbaru, dan fitur alur kerja yang disederhanakan membuat pengembangan PHP selancar dan seefisien mungkin.

Peningkatan ini menghasilkan alur kerja pengembangan yang lebih lancar, kinerja aplikasi yang lebih baik, dan proses pengembangan yang lebih efisien secara keseluruhan. Kita Hosting Aplikasi fitur-fitur canggih layanan, seperti penskalaan otomatis, infrastruktur aman, dan peningkatan kinerja dengan mesin tercepat Google Cloud Platform, memberikan lingkungan yang ideal untuk menerapkan aplikasi Laravel 11.

Kami tidak sabar untuk melihat aplikasi apa yang Anda buat menggunakan Laravel 11 — dan bagaimana Anda menggunakan Kinsta untuk membantu aplikasi Laravel Anda berkembang.

Marcia Ramos
Kinsta

Saya Pemimpin Tim Editorial di Kinsta. Saya seorang penggemar open source dan saya suka coding. Dengan lebih dari 7 tahun menulis dan mengedit teknis untuk industri teknologi, saya senang berkolaborasi dengan orang-orang untuk membuat konten yang jelas dan ringkas serta meningkatkan alur kerja.