The PHP Framework
for Web Artisan
source: https://laravel.com/
Laravel adalah sebuah alat atau framework (kerangka kerja) untuk membantu pembangunan situs Web atau Aplikasi Online dengan lebih mudah dan cepat, jika kita memperhatikan lebih lagi terkait slogannya “The PHP Framework” kita bisa tau bahwa laravel ini dibuat dengan bahasa pemrograman PHP, dan bagian “for Web Artisan” artisan diambil dari kata seniman yang mana laravel ini ditujukan untuk para seniman web.
Seperti yang kita tahu dari slogan sebelumnya laravel ini dibuat dengan bahsa pemrograman PHP, jadi jika sebelumnya kalian familiar dengan bahasa pemrograman PHP maka itu akan sangat membantu yang dimana di laravel nya itu sendiri beberapa masih menggunakan sintaks PHP.
Laravel juga gratis dan terbuka untuk umum jadi sangat cocok untuk pemula yang ingin mempelajari framework Web, karena untuk belajar kita bisa mendapatkan laravel ini secara cuma – cuma.
Mengapa Belajar Laravel?
Alasannya tentunya laravel ini sangat bermanfaat untuk kita pelajari khususnya jika kita tertarik mengenai pengembangan web, berikut poin – poinnya saya sertakan di bawah ini:
- Popularitas
- Framework laravel ini cukup populer di kalangan pengembang Web yang mana tentunya Komunitasnya sendiri sangat besar bahkan hingga saat ini.
- Banyaknya permintaan
- banyak perusahaan / company besar yang masih menggunakan teknologi laravel ini.
- Produktivitas Tinggi
- Laravel menyediakan fitur bawaan seperti sistem routing, manajemen database, autentifikasi dan masih banyak lagi.
dan masih banyak lagi alasan yang menguntungkan untuk mempelajari framework laravel ini
Dalam blog ini, kita akan membahas hal – hal yang sangat dasar terkait framework laravel ini berikut merupakan poin – poin bahasan kita kali ini:
- instalasi yang dibutuhkan
- pembuatan project
- konfigurasi
- struktur direktori project
Instalasi
Beberapa software yang kita butuhkan sebelum memulai project laravel kita diantaranya :
PHP
Composer
DB Mysql
Code Editor (VS Code)
Instalasi PHP
Jika kalian menggunakan OS (Sistem Operasi) keluarga Unix maka bisa mengikuti saya untuk instalasi php karena saya sendiri di sini menggunakan Linux Ubuntu.
sudo apt install php
kalian bisa menambahkan versinya jika ingin memakai versi tertentu contoh (php8.0), php ini kita butuhkan untuk menginstall composer
untuk instalasi system window akan saya sertakan link dari situs web resminya lalu klik for window: https://www.php.net/downloads.php
Instalasi Composer
Jika kalian sudah mempunyai PHP-nya maka bisa langsung saja bisa langsung mengcopykan syntax ini jika menggunakan OS Keluarga Unix
php -r “copy(‘https://getcomposer.org/installer’, ‘composer-setup.php’);”
php -r “if (hash_file(‘sha384’, ‘composer-setup.php’) === ‘dac665fdc30fdd8ec78b38b9800061b4150413ff2e3b6f88543c636f7cd84f6db9189d43a81e5503cda447da73c7e5b6’) { echo ‘Installer verified’; } else { echo ‘Installer corrupt’; unlink(‘composer-setup.php’); } echo PHP_EOL;”
php composer-setup.php
php -r “unlink(‘composer-setup.php’);”
Setelah selesai mendownload maka kalian akan mendapat file composer.phar maka bisa kalian pindahkan saja ke directory ini /usr/local/bin/composer bisa kalian copy saja syntax di bawah ini
sudo mv composer.phar /usr/local/bin/composer
setelah itu masukan konfigurasi path di bawah ini pada file bashrc
export PATH=”$PATH:/home/aris/.config/composer/vendor/bin”
selesai/.
untuk instalasi pada OS Window saya akan sertakan link dari situs resminya: https://getcomposer.org/doc/00-intro.md#installation-windows
Instalasi Mysql
Untuk menginstal Mysql bisa diikuti untuk OS Ubuntu dengan syntax di bawah in
sudo apt install mysql-server
lalu kalian bisa mengoperasikan mysql ini dengan command dibawah ini:
sudo service mysql status (untuk melihat status mysql)
sudo service mysql start (menjalankan mysql)
sudo service mysql restart (mematikan dan menghidupkan ulang mysql)
sudo service mysql stop (mematikan mysql)
untuk instalasi pada OS Window saya akan sertakan link dari situs resminya, kalian bisa langsung mengunduh installernya dan mengikuti instruksi konfigurasinya: https://dev.mysql.com/downloads/installer/
Instalasi Code Editor (VS Code)
Untuk instalasi code editor disini saya akan menggunakan vs code, karena vs code itu sendiri gratis dan memiliki banyak fitur yang mendukung pengkodean kita untuk laravel ini salah satunya fitur extension marketplace yang mana sangat memudahkan kita jika kita membutuhkan extension tertentu untuk laravel ini.
berikut link vs code dari web resminya: https://code.visualstudio.com/download
vs code tersedia untuk beberapa OS saya di sini akan menggunakan versi OS linux ubuntu
Pembuatan Project Laravel
Nah kalian bisa langsung saja buat project dengan composer yang sebelumnya pernah kalian install dan pastikan kalian terhubung ke internet, contohnya seperti syntax dibawah ini
composer create-project laravel/laravel (nama project yang kalian inginkan) disini saya akan menamai projectnya dengan nama laravel-basic, contoh :
composer create-project laravel/laravel laravel-basic
proses installasi ini memang cukup memakan waktu, alasannya composer menginstal laravel secara online, alternatif lainnya jika kalian ingin menginstall secara local kalian memerlukan konfigurasi untuk laravel/installernya berikut saya sertakan syntaxnya di bawah ini:
composer global require laravel/installer
laravel new laravel-basic
setelah project terbuat kalian bisa langsung masuk ke direktori projectnya
cd laravel-basic
lalu bisa langsung jalankan server dari perintah laravel artisan:
php artisan serve
lalu akan muncul bahwa server berjalan pada alamat berapa lalu bisa kalian klik dan otomatis akan langsung membukanya di browser default kalian dan harusnya langsung masuk ke tampilan awal laravel
Configuration file env
Di file env ini kita dapat mengkonfigurasi berbagai macam hal mulai dari nama, bahasa, timezone, database dan masih banyak lagi di sini saya tidak akan mengubah settingan defaultnya terlalu banyak hanya konfigurasi nama laravel serta konfigurasi database
APP_NAME=laravel-basic
APP_ENV=local
APP_KEY=base64:FFQPfp5Jo2n3lVQkuNDUAZArLYB/y6TjEyQVwBC37ow=
APP_DEBUG=true
APP TIMEZONE=UTC
APP_URL=http://localhost
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=laravel
DB_USERNAME=root
DB_PASSWORD=
pastikan untuk konfigurasi data base seusia dengan mysql kalian di sini username db mysql saya root dengan password kosong, setelah itu kalian bisa kembali ke halam browser yang telah kalian buka tadi, mungkin terdapat error karena tadi settingan default pembuatan project menggunakan composer otomatis merupakan db sqlite, berikut cara mengatasinya dengan mentikan sintaks dibawah ini di direktori root kalian:
php artisan migrate
error tadi disebabkan menghilangnya table default yang disediakan oleh blade, karena sebelumnya di integrasikan dengan db sqlite sekarang ketika kita melakukan perintah migrate maka akan memastikan struktur basis data selaras dengan definisi yang ada di file migrasi.
Struktur Direktori Laravel
Struktur default direktori laravel dimaksudkan untuk memberikan titik awal yang baik untuk aplikasi dengan skala besar maupun kecil, dan defaultnya struktur ini juga memakai konsep MVC ( Model View Controller) meskipun begitu kita bebas mengatur struktur aplikasi sesuai dengan keinginan kita dan bahkan mungkin jika skalanya diperbesar tidak akan menggunakan konsep MVC lagi, karena laravel hampir tidak menerapkan batasan – batasan dimana class tertentu seharusnya berada selama composer dapat memuat class secara otomatis.
Saya disini tidak akan menjelaskan terkait semua direktori laravel namun saya akan menjelaskan terkait direktori yang umum digunakan
Root Direktori
Root direktori adalah sebuah direktori utama yang mengandung semua file dan folder yang diperlukan untuk menjalankan aplikasi, root direktori adalah tempat dimana kita menginstall aplikasi karena sebelumnya saya membuat project dengan nama laravel-app maka itulah nama root direktori saya, berikut adalah penjelasan tentang isi direktori root dan fungsinya masing masing
app direktori
merupakan salh satu direktori utama yang berisi code inti kita, di sini kita bisa melihat subdirektori dan file yang akan mengatur logika aplikasi seperti controller, model, middleware.
config direktori
Berisi semua file konfigurasi aplikasi laravel, setiap file mengatur untuk konfigurasi bagian tertentu
database Direktori
mengandung database migration kita, factories, dan juga seeder
public Direktori
berisi file yang dapat diakses secara public seperti index.php, file Java Script, CSS, gambar dan lainnya.
resources Direktori
Berisi file view (blade templates), aset mentah seperti CSS dan JavaScript dll
storage Direktori
Berisi file yang dihasilkan aplikasi seperti log, cache, dan file yang diunggah. Direktori ini memiliki subdirektori seperti app, framework, dan logs.
tests Direktori
Berisi file pengujian aplikasi Anda. Laravel menggunakan PHPUnit untuk pengujian otomatis, dan direktori ini diatur untuk menyimpan semua file pengujian.
vendor Direktori
Berisi semua dependensi pihak ketiga yang diinstal melalui Composer. Direktori ini tidak diubah secara manual karena dikelola oleh Composer.
artisan Direktori
Script CLI utama untuk Laravel. Perintah php artisan digunakan untuk berbagai tugas, seperti menjalankan migrasi, membuat kontroler, menjalankan server pengembangan, dll.
composer.json File
File konfigurasi untuk Composer, yang mencantumkan semua dependensi PHP dan informasi meta tentang proyek.
package.json File
File konfigurasi untuk npm (Node Package Manager), mencantumkan semua dependensi frontend dan skrip npm.
.env File
File konfigurasi lingkungan yang menyimpan informasi sensitif seperti kredensial database, kunci aplikasi, dan konfigurasi lainnya yang berubah berdasarkan lingkungan (local, production, dll).
.gitignore
File ini menentukan file dan direktori apa yang harus diabaikan oleh Git. Biasanya mencakup file sementara, file cache, dan kredensial sensitif.
Penutup
Sebelumnya terimakasih karena telah mengikuti / membaca dokumentasi dari blog saya dan untuk kedepannya kemungkinan besar / Insyaallah blog ini akan saya update terkait materinya bahkan termasuk penanganan error yang mungkin muncul di beberapa Sistem operasi / laptop yang memang mungkin berbeda.
Saya mohon maaf apabila sebelumnya terdapat kesalahan penyampaian dan pengetikan dan saya juga kedepannya akan terus berusaha meningkatkan diri lagi untuk supaya bisa menyampaikan materi lebih baik lagi.
Sekali lagi saya ucapkan Terimakasih
Tertarik mengikuti training di ID-Networkers? Kami menyediakan berbagai pilihan training yang bisa kamu ikuti, klik disini untuk info lengkapnya
Penulis : Dicky Aris Munandar