Laravel - Application Structure

Laravel - Application Structure

Halo semuanya..

Artikel kali ini kita akan sedikit membahas mengenai Application Struktur.

Yuk langsung aja kita simak....

Struktur aplikasi pada Laravel pada dasarnya adalah struktur folder, sub-folder dan file yang termasuk dalam proyek. Setelah kami membuat proyek di Laravel, kami mendapatkan gambaran umum tentang struktur aplikasi seperti yang ditunjukkan pada gambar di sini.

Snapshot yang ditunjukkan di sini merujuk ke folder root Laravel yaitu laravel-project. Ini mencakup berbagai sub-folder dan file. Analisis folder dan file, bersama dengan aspek fungsionalnya diberikan di bawah ini

                                                                         

Aplikasi

Ini adalah folder aplikasi dan termasuk seluruh kode sumber proyek. Ini berisi events, exception, dan middleware declaration. Folder aplikasi terdiri dari berbagai sub folder seperti yang dijelaskan di bawah ini -

Console

Consol mencakup perintah pengrajin yang diperlukan untuk Laravel. Ini termasuk direktori bernama Commands, di mana semua perintah dinyatakan dengan tanda tangan yang sesuai. File Kernal.php memanggil perintah yang dinyatakan dalam Inspire.php.

                                                                   

Jika kita perlu memanggil perintah tertentu di Laravel, maka kita harus membuat perubahan yang sesuai di direktori ini.

Events

Folder ini mencakup semua acara untuk proyek.

                                                                   

Events digunakan untuk memicu kegiatan, meningkatkan kesalahan atau validasi yang diperlukan dan memberikan fleksibilitas yang lebih besar. Laravel menyimpan semua acara di bawah satu direktori. File default yang disertakan adalah event.php di mana semua acara dasar dideklarasikan.

Exceptions

Folder ini berisi semua metode yang diperlukan untuk menangani pengecualian. Ini juga berisi file handle.php yang menangani semua pengecualian.

Http

Folder Http memiliki sub-folder untuk controllers, middleware, dan application request. Karena Laravel mengikuti pola desain MVC, folder ini mencakup model, controllers, dan view yang ditentukan untuk direktori tertentu.

Sub-folder Middleware mencakup mekanisme middleware, yang terdiri dari mekanisme filter dan komunikasi antara respons dan permintaan.

Sub-folder Request mencakup semua permintaan aplikasi.

Jobs

Direktori Jobs menyimpan aktivitas yang antri untuk aplikasi Laravel. Kelas dasar dibagi di antara semua Pekerjaan dan menyediakan lokasi pusat untuk menempatkan mereka di bawah satu atap.

Listeners

Listeners tergantung pada peristiwa dan mereka termasuk metode yang digunakan untuk menangani events dan exception. Misalnya, login event yang dideklarasikan mencakup acara LoginListener.

Policies

Policies adalah kelas PHP yang mencakup logika otorisasi. Laravel menyertakan fitur untuk membuat semua logika otorisasi dalam kelas kebijakan di dalam sub folder ini.

Providers

Folder ini mencakup semua penyedia layanan yang diperlukan untuk mendaftarkan acara untuk server inti dan untuk mengkonfigurasi aplikasi Laravel.

Bootstrap

Folder ini menyertakan semua skrip bootstrap aplikasi. Ini berisi sub-folder yaitu cache, yang mencakup semua file yang terkait untuk caching aplikasi web.

Kalian juga dapat menemukan file app.php, yang menginisialisasi skrip yang diperlukan untuk bootstrap.

Config

Folder konfigurasi mencakup berbagai konfigurasi dan parameter terkait yang diperlukan untuk kelancaran aplikasi Laravel.

Berbagai file yang termasuk dalam folder config adalah seperti yang ditunjukkan pada gambar di sini. Nama file berfungsi sesuai fungsionalitas yang terkait dengannya.

                                                     

Database

Seperti namanya, direktori ini mencakup berbagai parameter untuk fungsi basis data. Ini termasuk tiga sub-direktori seperti yang diberikan di bawah ini -

  • Seeds - Ini berisi kelas yang digunakan untuk database pengujian unit.
  • Migrations - Folder ini membantu dalam kueri untuk memigrasi database yang digunakan dalam aplikasi web.
  • Factories - Folder ini digunakan untuk menghasilkan sejumlah besar catatan data.

 

Public

Ini adalah folder root yang membantu dalam menginisialisasi aplikasi Laravel. Ini termasuk file dan folder berikut -

  • .htaccess - File ini memberikan konfigurasi server.
  • javascript and css - File-file ini dianggap sebagai aset.
  • index.php - File ini diperlukan untuk inisialisasi aplikasi web.

 

Resources

Direktori Sumber Daya berisi file yang meningkatkan aplikasi web Kalian. Sub-folder yang termasuk dalam direktori ini dan tujuannya dijelaskan di bawah ini -

  • assets - Folder aset menyertakan file seperti LESS dan SCSS, yang diperlukan untuk menata aplikasi web.
  • lang - Folder ini mencakup konfigurasi untuk pelokalan atau internalisasi.
  • views - Views adalah file HTML atau templat yang berinteraksi dengan pengguna akhir dan memainkan peran utama dalam arsitektur MVC.

Perhatikan bahwa direktori sumber daya akan diratakan alih-alih memiliki folder assets. Representasi bergambar yang sama ditunjukkan di bawah ini -

                                        

Storage

Ini adalah folder yang menyimpan semua log dan file yang diperlukan yang sering dibutuhkan ketika proyek Laravel sedang berjalan. Sub-folder yang termasuk dalam direktori ini dan tujuannya diberikan di bawah ini :

  • app - Folder ini berisi file-file yang dipanggil secara berurutan.
  • framework - Ini berisi sesi, cache dan tampilan yang sering dipanggil.
  • Logs - Semua pengecualian dan log kesalahan dilacak di sub folder ini.

 

Tests

Semua kasus uji unit termasuk dalam direktori ini. Konvensi penamaan untuk kelas kasus uji penamaan adalah camel_case dan mengikuti konvensi sesuai fungsionalitas kelas.

Vendor

Laravel sepenuhnya didasarkan pada dependensi composer, misalnya untuk menginstal pengaturan Laravel atau menyertakan perpustakaan pihak ketiga, dll. Folder Vendor mencakup semua dependensi komposer.

Selain file yang disebutkan di atas, Laravel juga menyertakan beberapa file lain yang memainkan peran utama dalam berbagai fungsi seperti konfigurasi GitHub, packages dan pustaka pihak ketiga.

File yang termasuk dalam struktur aplikasi ditunjukkan di bawah ini :

                                         

 

 

Download Tutorial