Selasa, 24 Maret 2015

Struktur Project pada Laravel | Laravel Tutorial Part 2

Struktur Project pada Laravel | Laravel Tutorial Part 2 - Sebelum kita belajar lebih lanjut mengenai Laravel, ada baiknya kita mengetahui dulu mengenai apa aja yang terdapat di dalam project Laravel dan gunanya untuk apa. Jika kira buka kembali folder BelajarLaravel yang telah kita buat pada tutorial Installasi Laravel 4.2, maka kita akan menemukan file-file dan folder berikut ini :
Struktur Folder pada Laravel

Lalu, apa sih kegunaan file atau folder di atas? Mari kita bahas satu-persatu.
  • app/
    Folder ini digunakan untuk menyediakan tempat default untuk menyimpan kode yang sudah ditulis atau dikonfigurasi. Pada folder ini lah kita meletakan semua kode projek aplkasi yang dimulai dari konfiguasi, logic dan sebagainya. Didalam folder app juga terdapat beberapa folder dan file yang akan dijelaskan dibawah ini.
    • commands/
      Folder ini berguna untuk menyimpan perintah-perintah artisan yang kita buat untuk keperluan aplikasi yang kita buat.
    • config/
      Folder ini menyimpan konfigurasi framework ataupun aplikasi kita.
    • controllers/
      Folder ini digunakan untuk menyimpan kelas-kelas PHP Controller. Dengan menggunakan controller maka kita bisa memisahkan logika aplikasi kedalam beberapa kelas PHP.
    • databases/Folder ini merupakan tempat untuk menyimpan keperluan basisdata, baik untuk migrasi (migration) maupun untuk memasukkan data kedalam basisdata (seed).
    • lang/
      Folder ini digunakan untuk menyimpan berbagai lokalisasi bahasa untuk keperluan aplikasi, baik bahasa untuk paginasi, validasi dan lainnya. Misal anda ingin menambah dukungan bahasa Indonesia untuk aplikasi anda maka anda dapat membuat folder dengan nama id pada folder lang tersebut lalu memodifikasi value dari array pada file pagination.php, reminders.php dan validation.php sesuai dengan bahasa yang anda inginkan.
    • models/
      Folder ini berisi kelas-kelas model yang kaitannya dengan interaksi ke database.
    • start/
      Folder ini digunakan untuk menyimpan prosedur aplikasi yang kita buat, misalnya saja untuk menangani error dan lain-lain.
    • storage/
      Folder ini berfungsi untuk menyimpan file-file yang dibuat oleh laravel ke hardisk. Misalnya saja untuk membackup database (file .sql), kita tempatkan ke direktori storage/backup. Selain itu, folder ini juga untuk menyimpan log apache, sessions, dan lainnya.
    • tests/
      Folder untuk meyimpan semua unit dan tests untuk keperluan pengembangan aplikasi. Secara default laravel akan mencari test dalam folder ini.
    • views/
      Folder ini merupakan folder yang digunakan untuk menyimpan file-file PHP untuk keperluan tampilan (FrontEnd) pada aplikasi kita.
    • filters.php
      Merupakan file yang berisi daftar filer untuk routes aplikasi. Secara default Laravel sudah menyediakan beberapa filder untuk keperluan standar seperti autentifikasi dan proteksi CSRF.
    • routes.php
      File ini berisi semua route untuk aplikasi khususnya lalu lintas request ke aplikasi.
  • bootstrap/
    Folder ini berisi tentang file-file prosedur untuk framework laravel. Dalam folder ini terdapat beberapa file yang hanya boleh diedit oleh pengguna laravel yang sudah berpengalaman. Berikut ini adalah isi dari folder ini :
    • autoload.php
      File ini berisi sebagian besar prosedur framework laravel.
    • paths.php
      File ini berisi array dari jalur sistem file umum yang digunakan oleh framework laravel.
    • start.php
      File ini berisi tentang prosedur bagaimana framework laravel berjalan.
  • public/
    Folder ini berisi asset-asset yang akan digunakan pada aplikasi kita, misalnya saja file CSS, Javascript, Image, atau file public lainnya. Folder inilah nanti yang akan kita upload kedalam folder public pada hosting kita.
  • vendor/
    Folder ini berisi semua paket composer yang akan kita gunakan dalam aplikasi kita, file framework laravel juga berada pada folder ini.
  • .gitattributes
    File ini merupakan file konfigurasi standar sistem versi kontrol yang sangat populer saat ini yaitu Git.
  • .gitignore
    File ini berisi beberapa informasi folder mana saja yang akan diabaikan oleh Git.
  • artisan
    File ini merpakan file yang berfungsi untuk mengeksekusi atau menjalankan perintahperintah artisan CLI untuk laravel .
  • composer.json dan composer.lock
    Kedua file ini berisi informasi tentang paket-paket composer yang akan kita gunakan untuk keperluan aplikasi.
  • phpunit.xml
    File ini berisi konfigurasi default Unit Testing PHP Laravel. File ini juga menangani pemuatan dependensi composer dan mengeksekusi semua test yang ada pada direktori app/tests.
  • server.php
    File ini berisi tentang prosedur untuk menlakankan Laravel dengna web server internal yang diperkenalkan pada PHP versi 5.4. 

Itulah isi dari folder BelajarLaravel yang telah kita download pada tutorial Laravel sebelumnya. Bagaimana sudah mengerti kan sekarang kegunaan dari masing-masing folder pada framework laravel?

Silahkan tulis komentar pada kolom komentar di bawah. Komentar yang mengandung SARA dan spam akan dihapus.
EmoticonEmoticon