複数の「サイト」(つまり、バックエンド、パブリック フロントエンド、プライベート ペイ フォー フロントエンド、モバイル) があり、おそらくいくつかのウィジェット サービスまたは Android アプリ用の API を提供したいとします。サイトは (少なくとも最初は) 同じ Laravel インスタンスを共有する必要があり、いくつかのサービスを共有します (つまり、フロントエンド サイトがバックエンド サイトからいくつかのサービスを呼び出すか、バックエンド サイトと API がいくつかのサービスを共有する可能性があります。特にプレゼンテーション ロジックなどから優れた SoC を使用しているため)。
Userscape のプロジェクト Snappyを見て、Taylor Otwell はmodels
、呼び出されるフォルダーの名前を変更し、snappy
さまざまな「責任領域」用のフォルダーを追加しただけだと述べています。ただし、これはLaravel 4にありました。
Laravel 5 ディレクトリのデフォルトのディレクトリ構造は次のとおりです。
app <-- Should I rename and duplicate for backend, frontend, api...?
Commands
Console
Events
Exceptions
Handlers
Http
Controllers <-- Or add subfolders in Controllers for backend, frontend, api...?
Middleware
Requests
Providers
Services <-- And add subfolders in Services for backend, frontend, api...?
bootstrap
config
database
public
resources
storage
tests
vendor
このような状況では、Laravel 5 のディレクトリ構造にどのようにアプローチすればよいでしょうか (ネームスペースの問題を念頭に置いてください)。ドキュメントからこれに関するガイダンスは得られませんでした。