5

使用 Java,我有一个非常大的对象图,其中一个对象与许多其他对象相关联,每个对象都与许多其他对象相关联。大多数时候,我只需要一个子图来传递给方法或通过网络发送。

是否有推荐的设计模式,以便我可以在图中的许多点截断这个大对象图。一种方法是在所有截断点提供 NULL 作为参考。我会很感激任何其他想法。

谢谢

4

3 回答 3

1

如果我理解正确,您可以使用Lazy Factory
此策略通常用于映射具有您现在不需要的关联的对象,并且可能根本不需要。(它在 Hibernate ORM 中被广泛使用)。
当您想通过网络发送大型对象时,您可以使用代理模式。

于 2012-10-16T17:30:00.177 回答
0

一种选择是用 Node 对象构建图形(就像您现在所做的那样),然后截断图形,用 Graph 对象封装它,该对象将图形存储为成员,提供自己的接口来在图,并在内部使用将被视为从图中删除的节点表。

这种方法的好处是您不会改变原始图形对象本身,也不必复制它。

于 2012-10-16T17:26:30.597 回答
0

代理模式是解决这类问题的一个很好的设计模式。

于 2012-10-16T17:27:27.853 回答