Lewati ke konten utama

Panduan untuk Anda Belajar Laravel

Jika anda ingin tahu lebih dalam soal laravel, sebaiknya Anda belajar terlebih dahulu beberapa hal berikut:

  • Belajar dahulu HTML, JavaScript, dan CSS.
  • Belajar dulu HTTP.
  • Belajar dulu Git dan GitHub.
  • Belajar dahulu PHP.
  • Lalu ke Laravel.
  • Pelajari Juga Database.

Perangkat Lunak yang digunakan Windows

  • Pasang VCM (Version Control System) yaitu git.
  • Pasang Text Editor atau IDE (Integrated Development Environment) seperti Visual Studio Code.
  • Pasang Composer. PHP Package Management.
  • Pasang Laravel Herd.
    • Nginx [Free]
    • PHP [Free]
    • NVM (NodeJS Version Manager) [Free]
    • Domain cantik untuk testing .test , contoh: websitegua.test. [Free]
    • SQLite [Free]
  • Pasang DBngin. Alternatif dari Laravel Herd Pro untuk manajemen versi database.
    All-in-One Database Version Management Tool: PostgreSQL, MySQL, MariaDB, Redis.
  • Pasang Docker Desktop Windows WSL 2
    • Saya sarankan gunakan WSL 2 (Windows Sub-System Linux).
  • Pasang Docker Minio. S3 Bucket.
  • [Tidak Direkomendasikan] Pasang Laragon v6.0.0 (GRATIS).
    • Alternatif dari Laravel Herd Pro
    • [Tidak Direkomendasikan] Pasang Laragon v7.0.0 itu berbayar butuh license.
    • Database Version Management Tool: PostgreSQL, MySQL, MariaDB, Redis
    • [Tidak Direkomendasikan] Pasang NVM (Node Version Manager) gunakan Laravel Herd
    • [Tidak Direkomendasikan] Pasang Nginx gunakan Laravel Herd Saya ada masalah soal laragon, yaitu masalah ini: Masalah Laragon Multiple Http Get Error Timeout
  • [Tidak Direkomendasikan] Pasang XAMPP Karena XAMPP memiliki masalah ganti versi PHP, jadi saya pindah ke Laragon atau Laravel Herd.
  • [Tidak Direkomendasikan] Pasang nvm-windows. Karena nvm (Node Version Manager) sudah ada pada Laravel Herd jadi tidak perlu memasang ini.

Menambahkan Git Alias

Silahkan baca di sini: Git Aliases

Debug Laravel

Database Query Debug

  • Dapat bekerja di web.php maupun api.php

Tambahkan kode di bawah ini pada method boot di file app/Providers/AppServiceProvider.php .

DB::listen(fn ($e) => dump($e->toRawSql()));
DB::listen(function ($q) {
dump($q->sql);
});

Package barryvdh/laravel-debugbar

composer require barryvdh/laravel-debugbar --dev
php artisan vendor:publish --provider="Barryvdh\Debugbar\ServiceProvider"

Laravel Telescope

Optimize Query Database

AppServiceProvider

public function boot(): void
{
// Mencegah lezy loading query ke database saat local/develop
// Tidak aktif saat production
// Model::preventLazyLoading(!$this->app->isProduction());
Model::shouldBeStrict(!app()->isProduction())
Model::unguard();
Date::use(CarbonImutable::class);
DB::prohibitDesctructiveCommands(app()->isProduction());
}

Coba Cari Tahu

  • Laravel night watch
  • herd-profile

Mail

  • mailtrap

Catatan Simple