Laravel - Struktur Aplikasi

Selamat datang, para pengembang berbakat! Hari ini, kita akan memulai perjalanan menarik melalui struktur aplikasi Laravel. Sebagai guru ilmu komputer yang ramah di lingkungan sekitar Anda, saya di sini untuk mengarahkan Anda melalui bagian dalam dan luar framework PHP yang kuat ini. Jangan khawatir jika Anda baru dalam pemrograman – kita akan mulai dari dasar dan tingkatkan keahlian kita. Jadi, ambillah secangkir kopi, dan mari kita masuk ke dalamnya!

Laravel - Application Structure

Gambar Besar

Sebelum kita masuk ke detil, mari kitaambil sedikit waktu untuk memahami mengapa struktur Laravel penting. Bayangkan Anda membangun sebuah rumah. Anda tidak akan mulai melekatkan papan secara acak, kan? Anda memerlukan sebuah rancangan, sebuah rencana. Itu persis apa yang disediakan struktur Laravel – sebuah rancangan yang terorganisir baik untuk aplikasi web Anda.

Sekarang, mari kita jelajahi setiap direktori utama di Laravel:

App

Direktori app adalah hati dari aplikasi Laravel Anda. Itu adalah tempat sebagian besar kode inti aplikasi Anda berada.

Contoh: Membuat Controller Sederhana

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;

class WelcomeController extends Controller
{
public function index()
{
return view('welcome');
}
}

Dalam contoh ini, kita telah membuat controller sederhana bernama WelcomeController. Metode index mengembalikan view yang disebut 'welcome'. Ini biasanya digunakan untuk menampilkan halaman utama aplikasi Anda.

Bootstrap

Direktori bootstrap berisi file yang memulai framework. Anda biasanya tidak perlu mengubah apa-apa di sini, tapi itu baik untuk mengetahui kalau itu ada.

Config

Seperti yang diimbangankan namanya, direktori config berisi semua file konfigurasi aplikasi Anda.

Contoh: Mengubah Nama Aplikasi

Dalam config/app.php:

'name' => env('APP_NAME', 'Aplikasi Laravel Saya Menakjubkan'),

Baris ini mengatur nama aplikasi Anda. Fungsi env memeriksa jika ada nilai APP_NAME di file .env Anda. Jika tidak, ia menggunakan 'Aplikasi Laravel Saya Menakjubkan' sebagai default.

Database

Direktori database berisi migrasi basis data Anda, model factories, dan seeds. Pahami migrasi sebagai kendali versi untuk skema basis data Anda.

Contoh: Membuat Migrasi Sederhana

<?php

use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;

class CreateUsersTable extends Migration
{
public function up()
{
Schema::create('users', function (Blueprint $table) {
$table->id();
$table->string('name');
$table->string('email')->unique();
$table->timestamps();
});
}

public function down()
{
Schema::dropIfExists('users');
}
}

Migrasi ini membuat tabel 'users' dengan kolom 'id', 'name', 'email', dan timestamp. Metode down memungkinkan Anda membatalkan migrasi jika diperlukan.

Public

Direktori public berisi file index.php, yang adalah titik masuk untuk semua permintaan masuk ke aplikasi Anda. Direktori ini juga menyimpan aset Anda seperti gambar, JavaScript, dan CSS.

Resources

Direktori resources berisi view Anda serta aset mentah, belum dikompilasi seperti LESS, SASS, atau JavaScript.

Contoh: Membuat View Sederhana

Dalam resources/views/welcome.blade.php:

<!DOCTYPE html>
<html>
<head>
<title>Selamat Datang di Aplikasi Saya</title>
</head>
<body>
<h1>Hallo, {{ $name }}!</h1>
</body>
</html>

View ini menggunakan mesin template Blade Laravel. Sintaks {{ $name }} akan diganti dengan nilai aktual $name saat view dirender.

Storage

Direktori storage berisi template Blade yang dikompilasi, sesi berbasis file, cache berbasis file, dan file lain yang dihasilkan oleh framework.

Tests

Direktori tests berisi tes otomatis Anda. Laravel menyediakan framework tes yang mudah digunakan secara default.

Contoh: Menulis Tes Sederhana

<?php

namespace Tests\Feature;

use Tests\TestCase;

class ExampleTest extends TestCase
{
public function test_the_application_returns_a_successful_response()
{
$response = $this->get('/');

$response->assertStatus(200);
}
}

Tes ini memeriksa jika halaman utama aplikasi Anda mengembalikan kode status HTTP yang sukses (200).

Vendor

Direktori vendor berisi dependensi Composer Anda. Anda tidak perlu mengubah apa-apa secara langsung di direktori ini.

Perintah Artisan Laravel

Laravel datang dengan antarmuka baris perintah yang kuat yang disebut Artisan. Berikut adalah tabel dari beberapa perintah Artisan yang sering digunakan:

Perintah Deskripsi
php artisan serve Memulai server pengembangan
php artisan make:controller Membuat controller baru
php artisan make:model Membuat model baru
php artisan migrate Menjalankan migrasi basis data
php artisan tinker Bertindak balas dengan aplikasi Anda

Ingat, perintah ini adalah teman Anda. Mereka dapat menyelamatkan Anda banyak waktu dan usaha!

Penutup

Dan itu adalah dia, teman-teman! Kita telah melakukan perjalanan singkat melalui struktur aplikasi Laravel. Ingat, seperti belajar keterampilan baru, menguasai Laravel memerlukan waktu dan praktek. Jangan frustasi jika hal-hal tidak langsung berjalan – itu semua bagian dari proses belajar.

Saat kita mengakhiri, saya diperingatkan tentang cerita dari hari-hari awal saya dalam pemrograman. Pernah sekali saya menghabiskan jam mengejutkan masalah, hanya untuk menemukan bahwa saya melakukan kesalahan penulisan di nama file. Pelajaran? Perhatikan detil, tapi juga jangan lupa untuk mengambil langkah kembali dan melihat gambar besar.

Struktur Laravel mungkin tampak kompleks pada awalnya, tapi itu dirancang untuk membuat hidup Anda lebih mudah di masa depan. Itu seperti belajar menunggang sepeda – mungkin wobble pada awalnya, tapi sekali Anda mendapat kesan, Anda akan berlari tanpa henti dalam waktu singkat.

Terus coding, terus belajar, dan terutama, bersenang-senang! Ingat, setiap ahli pernah menjadi pemula. Anda bisa melakukan ini!

Credits: Image by storyset