用于从更复杂的对象构建对象的设计模式

时间:2009-07-16 21:49:50

标签: java design-patterns refactoring

我正在重构当前项目中的一些代码,如果以下场景中存在任何设计模式,我想要一些输入。

我有一个类,它执行一些逻辑并返回一个包含所述逻辑结果的对象;我们称之为Result对象。 Result对象中包含的状态信息是基于更复杂的对象Intermediary对象构造的。

现在,从Intermediary对象填充Result对象的代码已经存在,但由于我正在重构,我想让它变得更干净。我正在考虑创建一个单独的类,可能称为ResultBuilder,它有一个静态执行方法,它将Intermediary作为输入并吐出Result作为输出。

是否有一个与“ResultBuilder”类相同的设计模式?是否有更好的方法从中介对象构建Result对象?

5 个答案:

答案 0 :(得分:2)

我相信你想要工厂模式。

答案 1 :(得分:1)

您似乎已经有了解决方案,那么为什么您需要为您命名一些外部来源,以便它变得更有效?
如果它对你有意义并且确实让事情更清晰,更清洁,那就去做吧,不要过多地考虑名字和标签。

答案 2 :(得分:1)

为什么Result不能有一个带Intermediary实例的构造函数?

答案 3 :(得分:1)

Builder模式!

虽然它通常是一个多部分构建过程....如果它只做一件事,那么它更像是一个工厂......

它的标准GOF模式

答案 4 :(得分:1)

我建议调查BuilderFactory模式,这两种模式都是Gang of Four模式。维基百科上有两个例子,在Java中也不例外。