Laravelのディレクトリ構造(全体像と重要フォルダの役割) – 3/12

前回の記事では Laravelの環境構築 を行い、実際にLaravelを起動しました。

今回は次のステップとして

Laravelプロジェクトの中身(ディレクトリ構造)

を理解していきます。

Laravelは多くのフォルダとファイルで構成されており、最初は複雑に見えますが、重要なポイントを押さえればすぐに理解できます。

この記事では次の内容を解説します。

  • Laravelの全体構造
  • よく使うディレクトリ
  • 開発で触る場所
  • 初心者が見るべきポイント

Laravelの全体構造

Laravelプロジェクトを作成すると、次のような構造になります。

app/
bootstrap/
config/
database/
public/
resources/
routes/
storage/
vendor/
.env
artisan
composer.json

最初はすべて理解する必要はありません。

まずは 重要なフォルダだけ覚えることが大切です。


まず覚えるべき3つ

Laravel初心者が最初に覚えるべきフォルダは次の3つです。

  • app
  • routes
  • resources

この3つだけで基本的なWebアプリは作れます。


appディレクトリ

app/

ここは

アプリケーションのロジック

を記述する場所です。

主に次のファイルが入ります。

  • Controller
  • Model
  • Service(任意)

Controller

Controllerは

処理を担当するクラス

です。

app/Http/Controllers/

ここにControllerを作成します。


Model

Modelは

データベース操作

を担当します。

app/Models/

routesディレクトリ

routes/

ここは

URLと処理の対応を定義する場所

です。


web.php

routes/web.php

Web画面用のルートです。

Route::get('/', function () {
    return view('welcome');
});

api.php

routes/api.php

API用のルートです。

ReactやVueと連携する場合はここをよく使います。


resourcesディレクトリ

resources/

ここは

画面(View)やフロント側のコード

を置く場所です。


views

resources/views/

Bladeテンプレートを配置します。

<h1>Hello Laravel</h1>

js / css

resources/js/
resources/css/

フロントエンドのコードです。

Viteでビルドされます。


publicディレクトリ

public/

ここは

外部公開されるディレクトリ

です。

ブラウザからアクセスされるファイルはすべてここに配置されます。

index.php

databaseディレクトリ

database/

ここには

  • migration
  • seed
  • factory

が入ります。


migrations

database/migrations/

テーブル構造を管理します。

Schema::create('users', function (Blueprint $table) {
    $table->id();
    $table->string('name');
});

configディレクトリ

config/

Laravelの設定ファイルが入ります。

  • app.php
  • database.php

storageディレクトリ

storage/

ログやキャッシュが保存されます。


vendorディレクトリ

vendor/

Composerでインストールされたライブラリが入ります。

基本的に触りません。


.envファイル

.env

環境設定ファイルです。

DB_DATABASE=laravel
DB_USERNAME=root
DB_PASSWORD=

artisan

artisan

Laravel専用コマンドです。

php artisan serve
php artisan migrate

Laravelの処理の流れ

Laravelの処理は次のように流れます。

URLアクセス
↓
routes/web.php
↓
Controller
↓
View(Blade)

これを理解すると全体像が見えます。


実務でよく触る場所

開発で主に触るのは次の場所です。

  • routes/web.php
  • app/Http/Controllers
  • resources/views
  • app/Models

まずはこの4つを中心に覚えましょう。


初心者が混乱するポイント

最初に混乱しやすいポイントです。

フォルダが多い

→ 全部覚える必要はない


MVCが分からない

→ 役割を分ける仕組み


vendorを触る

→ 触らない(重要)


まとめ

この記事では Laravelのディレクトリ構造 を解説しました。

重要なポイント

  • まずは app / routes / resources を覚える
  • Controllerが処理
  • Viewが画面
  • Modelがデータ

Laravelは構造を理解すると非常に使いやすいフレームワークです。


次の記事

次回は

Laravelのルーティング(routes/web.php)

を解説します。

ここでは

  • Route::get
  • Route::post
  • Controllerとの連携

などを詳しく説明します。

コメント

タイトルとURLをコピーしました