什么是一些 常见的 , 现实世界的例子 使用Builder模式的?它能买到什么?为什么不只使用工厂模式?
构建器和工厂恕我直言之间的主要区别在于,当您需要做很多事情来构建对象时,构建器非常有用。例如,想象一个DOM。您必须创建大量节点和属性才能获得最终对象。当工厂可以在一个方法调用中轻松创建整个对象时,将使用工厂。
使用构建器的一个示例是构建XML文档,例如在构建HTML片段时就使用了此模型,例如,我可能具有用于构建特定类型表的构建器,并且可能具有以下方法 (未显示参数) :
BuildOrderHeaderRow() BuildLineItemSubHeaderRow() BuildOrderRow() BuildLineItemSubRow()
然后,该构建器将为我吐出HTML。这比遍历大型过程方法更容易阅读。
在Wikipedia上查看Builder模式。