5

Javaを使用して、オブジェクトが他の多くのオブジェクトに関連付けられている非常に大きなオブジェクトグラフがあり、それぞれがさらに多くの他のオブジェクトに関連付けられています。ほとんどの場合、メソッドに渡すか、ネットワークを介して送信するためにサブグラフが必要です。

グラフの多くのポイントでこの大きなオブジェクトグラフを切り捨てることができるように、推奨されるデザインパターンはありますか。1つの方法は、切り捨てのすべてのポイントで参照としてNULLを提供することです。他のアイデアをいただければ幸いです。

ありがとう

4

3 に答える 3

1

私があなたが正しいと理解しているなら、あなたはレイジーファクトリーを使うことができます。
この戦略は、現在必要ではなく、まったく必要ない可能性のある関連付けを持つオブジェクトをマッピングするときに一般的に使用されます。(Hibernate ORMで広く使用されています)。
ネットワークを介して大きなオブジェクトを送信する場合は、プロキシパターンを使用できます。

于 2012-10-16T17:30:00.177 に答える
0

プロキシパターンは、この種の問題に適したデザインパターンです。

于 2012-10-16T17:27:27.853 に答える
0

1 つのオプションは、Node オブジェクトからグラフを作成し (現在行っているように)、グラフを切り捨てて、グラフをメンバーとして格納する Graph オブジェクトでカプセル化し、グラフで操作を実行するための独自のインターフェイスを提供することです。グラフから削除されたと見なされるノードのテーブルを内部的に使用します。

このアプローチの利点は、元のグラフ オブジェクト自体を変更していないことと、それをコピーする必要がないことです。

于 2012-10-16T17:26:30.597 に答える