私は現在、アプリケーションの永続性フレームワークを工夫しています...抽象化のための2つのソリューションについて議論しています。データレイヤから適切な量の抽象化は何ですか?
オプション1が最初に、そして簡単な(しかし、おそらくは複数のデータベースに結合された2層状のアプローチである。このアプローチでは、データ・マッパーは、データベースからデータを取得し、ビジネスエンティティを構築する。
ラフ図ワークフローの:
UserEntity <= UserMapper => Database
オプション2秒、及びより柔軟な(しかし、可能なやり過ぎ)アプローチ3階層化アプローチです。このアプローチでは、我々は仕事だ第三の目的を持って、それは単にに話すことです。データベースを返し、aを返します。データマッパーにデータを送り、オブジェクトを作成します。
ラフ図:
UserEntity <= UserMapper <= UserDataRetriever => Database
は明らかに最初のオプションの利点は、それが簡単で、作成することが迅速であるということです。 2番目のオプションの利点は、DataRetrieverのDB(および関連するクエリ)への接続を変更するだけで済むので、永続化メソッドを変更する方が簡単だということです。
このサイトのサイズが非常に高速になるので、アンチパターンの土地に入らずに、最も柔軟なオプションを選択したいと思います。
どちらが優れていますか?
レスポンスありがとう - この場合、レポはdbについて話すことを知っていますか?エンティティ用に構築された一連のクラスですか?私はそれについて自分自身についてももっと研究します... – johnnietheblack
これは、各ルートに対して構築されたクラスの集合であり、集合体です。 Order + OrderLines + OrderHistoryなどの1つ – jgauffin