解決済みの質問
Entityを、Entity Beanとか、DBのテーブルとか、と解釈します。
DTOをData Transfer Objectのデザインパターンと解釈します。
自分なりの解釈ですが。。。
Entityは、データレコードを表現するクラスのことで、DTOは、EntityBeanとかのデータをAPの都合の良い形でモジュール間でやりとりするためのクラス設計方法の一つと思います。
例えば、複数のデータソースからデータを取得してそれらを最終的なUI上に表現したいとした場合、画面構築の際にデータソースそれぞれに都度取得要求しつつ画面構築するよりかは、一度DTOにまとめてから画面構築したほうが設計上も綺麗ですしソースもシンプルになると思います。
パフォーマンスの面で言えば、例えば、データソースを扱う複数のサーバ(DBとか)とAPサーバとフロントエンドのAP(UI)が動作するクライアントPCといった構成で、クライアントからAPサーバを介してデータソースにデータ要求をしたいとした場合、データソース別に都度ネットワーク越しにデータの要求とレスポンスを繰り返すよりかは、APサーバでDTOにまとめてから、一括でやりとりしたほうがパフォーマンス的には良いと思います。もちろん呼び出す側でもそれを意識した呼び出しが必要だと思いますけど。
「DBと同じ名前と形式を持っているはず」というのがそもそも認識誤りなのじゃないかなと思ってるんですけど、どうでしょ。
投稿日時 - 2008-03-27 22:44:45
9人が「このQ&Aが役に立った」と投票しています
ベストアンサー以外の回答(1件中 1~1件目)
OKWaveのオススメ
おすすめリンク