私は最近、TableData GatewayとRowData Gatewayについて読んでいます。RDGは一度に一つのレコードを扱い、TDG は "エンタープライズアプリケーションアーキテクチャのパターン"これらのパターンはどちらも非常に似ていますが、SQLクエリをカプセル化し、私たちが作成したクエリに基づいてレコードセットに単一のレコードまたは多くのレコードを返します。RDGのTDGをいつ選択するかは本当に分かりません。いくつかのexplaination.Accordingとの違いを明確にするために非常に役立ちますマーティンファウラーTDGは1つのレコードを返すRDGと同じです。しかし、我々はまた複数のレコードのRDGを使用することもできます! 助けていただければ幸いです。 ありがとうございます。TableDataゲートウェイとRowdata Gatawayとの違いは何ですか?説明が必要
7
A
答えて
8
Row Data GatewayはDB内の行へのアクセスをカプセル化しますが、Table Data Gatewayはテーブルレベルでアクセスをカプセル化しますが、他のものの縮退型ではないようです。
テーブルデータゲートウェイには、行データゲートウェイを使用してRecordSetを返すメソッドがありますが、行ごとに1つのゲートウェイクラスを返す個別のFinderクラスが必要です。
いずれかを使用しているか、どちらを使用しているかは、使用している他のパターンの選択肢と結びついた複雑な決定です。
両方のパターンについての「使用するタイミング」セクションでの彼の議論から、Domain Modelパターンを使用する場合は、Active Recordのどちらかを使用することをお勧めします。これらのゲートウェイパターンは両方ともTransaction Scriptと組み合わせて使用するのが賢明です。
テーブルデータゲートウェイが簡単なので、必要な場合は適切な選択です。
これらのパターンを1つのアプリケーションで使用することはあまりありません。
関連する問題
- 1. GitHub Desktopのサマリーと説明の違いは何ですか?
- 2. gemspecの概要とgemspecの説明の違いは何ですか?
- 3. いくつかの説明が必要
- 4. SQLCmd.exeの説明が必要
- 5. NSLayoutAttributeBaselineの説明が必要
- 6. アセンブリコードの説明が必要
- 7. contravarianceの説明が必要です
- 8. UISwitch、説明が必要
- 9. 短いコードスニペットの説明が必要
- 10. エラー:Lvalueが必要です。説明が必要です
- 11. 再帰とジェネレータの例についての説明が必要
- 12. 私はviewHolderの説明が必要
- 13. ASP.NET TextBox:TextChanged - 説明が必要です!
- 14. はffmpegのとパイプの詳細の説明が必要
- 15. このコードのいくつかの説明が必要です
- 16. JavaScriptステートメントが必要です説明( 'this'と 'event')
- 17. 再帰についての説明が必要ですか?
- 18. OpenGL円投影。いくつかの説明が必要です
- 19. typedef int(* pf)は説明が必要
- 20. 私はecho -n ""> file.txtについてもっと説明が必要です
- 21. IOCとは何ですか?説明するための実用的なコード例が必要
- 22. 見出しと説明のCSSデザインコードとは何ですか?
- 23. 説明のI/Oとは何ですか?process.nextTickとsetImmediate?
- 24. asp.net vb.netは、何が間違っているかを説明できますか?
- 25. URLデコード機能:正確に何をしていますか?説明が必要
- 26. メタ説明には&が必要ですか?
- 27. StrictMockとPartialmockの違いを説明できますか?
- 28. AIDLとサービスの違いを説明できますか?
- 29. mongoose/mongodb populateコマンドの説明が必要
- 30. Windowsの\ Device \ PhysicalMemoryに説明が必要
ありがとうございました。 – Alex
面白いのは、私がリファクタリングしているが、書き換えていない現在のレガシーアプリは、実際にこれらのすべてのアクティブなレコードを賢明に使用することです:)。 –
「レガシーコード」は、実際に作業しスケーリングすることで、推奨される代替案とは異なることがよくあります。 --- [Bjarne Stroustrup](https://en.wikiquote.org/wiki/Bjarne_Stroustrup) – DaveBoltman