4

私は Laravel の初心者向けチュートリアルを完了し、それらのチュートリアルに記載されているすべてのトピックを理解できるようになり、独自のプロジェクトを作成しましたが、それらで見たように、チューターは各ファイルの目的を理解することができ、それを編集し、必要に応じて変更します。

では、彼らはどのようにしてどの情報源から深く学ぶのでしょうか?

4

1 に答える 1

12

Laravel Official Documentationで言われていることを簡単に試してみます

ルート ディレクトリ

すべての Laravel プロジェクトのルート ディレクトリには、次のディレクトリがあります。

  • ご想像のappとおり、ディレクトリにはアプリケーションのコア コードが含まれています。モデル、コントローラー、サービス、ミドルウェアがここに格納されます。

  • このbootstrapフォルダーには、フレームワークをブートストラップしてオートローディングを構成するいくつかのファイルと、ブートストラップのパフォーマンスを最適化するためにフレームワークで生成されたいくつかのファイルを含むキャッシュ フォルダーが含まれています。通常、このフォルダに触れる必要はありません。

  • ディレクトリにはconfig、名前が示すように、アプリケーションの構成ファイルがすべて含まれています。ここで、データベース接続、電子メール ドライバー、セッション ストレージ構成 (およびその他多数) を設定する必要があります。

  • このdatabaseフォルダーには、データベースの移行とシードが含まれています。必要に応じて、このフォルダーを使用して SQLite データベースを保持することもできます。Migrations を使用すると、SQL コードを記述せずにデータベースを定義できます。データベース構造のバージョン管理に関心がある場合、これは非常に便利です。詳細はこちら

  • このpublicディレクトリには、フロント コントローラーとアセット (画像、JavaScript、CSS など) が含まれます。

  • このresourcesディレクトリには、ビュー、生のアセット (LESS、SASS、CoffeeScript)、およびローカライズ ファイルが含まれています。デフォルトでは、ビューはブレードという名前のビュー エンジンを使用しますが、configフォルダー内でこれを変更できます。

  • このstorageディレクトリには、コンパイルされた Blade テンプレート、ファイル ベースのセッション、ファイル キャッシュ、およびフレームワークによって生成されたその他のファイルが含まれます。このフォルダーは、アプリ、フレームワーク、およびログのディレクトリに分離されています。app ディレクトリは、アプリケーションで使用されるファイルを保存するために使用できます。フレームワーク ディレクトリは、フレームワークで生成されたファイルとキャッシュを格納するために使用されます。最後に、logs ディレクトリにはアプリケーションのログ ファイルが含まれます。

  • ディレクトリには、自動化されたtestsテストが含まれています。PHPUnit の例がそのまま提供されます。

  • このvendorディレクトリには、Composer の依存関係と、アプリケーションに必要なライブラリが含まれています。composer を介してインストールされた各ライブラリーは、ここに保管されます。

アプリフォルダー

app フォルダーには、アプリケーションのコア コードが含まれています。このフォルダー内にはさまざまなディレクトリがあり、それぞれに特定の目的があります。

  • このappディレクトリには、Console、Http、Providers などのさまざまな追加ディレクトリが付属しています。Console および Http ディレクトリは、アプリケーションの「コア」に API を提供するものと考えてください。HTTP プロトコルと CLI はどちらもアプリケーションとやり取りするためのメカニズムですが、実際にはアプリケーション ロジックは含まれていません。つまり、アプリケーションにコマンドを発行する 2 つの方法にすぎません。Console ディレクトリにはすべてのArtisanコマンドが含まれ、Http ディレクトリにはcontrollermiddlewarerequestsが含まれます。アプリケーションのルートもこのディレクトリで定義されます。

  • ご想像のEventsとおり、ディレクトリにはイベント クラスが格納されています。イベントを使用して、特定のアクションが発生したことをアプリケーションの他の部分に警告し、柔軟性と分離を大幅に向上させることができます。詳細については、このリンクを確認してください

  • ディレクトリには、アプリケーションのExceptions例外ハンドラが含まれており、アプリケーションによってスローされた例外を固定するのにも適しています。

  • もちろん、このJobsディレクトリには、アプリケーションのキュー可能なジョブが格納されています。ジョブは、アプリケーションによってキューに入れられるか、現在のリクエスト ライフサイクル内で同期的に実行されます。ここに詳細があります

  • ディレクトリには、イベントのListenersハンドラ クラスが含まれています。ハンドラーはイベントを受け取り、発生したイベントに応答してロジックを実行します。たとえば、UserRegistered イベントは、SendWelcomeEmail リスナーによって処理される場合があります。

  • ディレクトリには、アプリケーションのPolicies承認ポリシー クラスが含まれています。ポリシーは、ユーザーがリソースに対して特定のアクションを実行できるかどうかを判断するために使用されます。詳細はこちら

于 2016-01-15T09:25:40.260 に答える