現在、プロジェクトを構成する 2 つの方法について議論しています。
プロジェクトをモジュールに分解すると、各モジュールには必要なモデル、例外、コントローラーが含まれます。したがって、ユーザーモジュールには、ユーザーモデル、ユーザーのすべての可能なユーザー例外ケース、およびユーザーを処理するための REST エンドポイントが含まれる場合があります。
トップレベルのモデル、サービス、コントローラー、例外がある従来のアプローチに従います。次に、サービスにはサブパッケージがあり、同様に例外もあります。
構造 1:
app/
/serviceA
/models
Foo.scala
/controllers
/exceptions
serviceA.scala
/serviceB
/models
Bar.scala
/controllers
/exceptions
serviceB.scala
構造 2:
app/
/controllers
/models
Foo.scala
Bar.scala
/exceptions
/serviceA
/serviceB
/services
/serviceA
/serviceB
例外、サービス、モデルを特徴とする推奨プロジェクト構造はありますか?