建造者模式 vs 外观模式设计模式

9
我遇到了不同的创建和结构设计模式。
在生成器中,它有三个部分,并且导演将决定执行顺序。
当我研究门面模式时,它也遵循相同的方法,即按顺序进行操作。
那么这两种模式的区别是什么? 当门面模式也涉及对象的创建和执行顺序时,它如何成为结构设计模式?
2个回答

7

外观模式只是一种简化对象模型调用的方式,使得每次执行一组操作时不必编写大量代码。例如,您可以编写一个外观来简化需要调用多个对象和方法以执行任务的情况。

更多信息: 请参见此答案

建造者模式只是一种用于简化类或一组类的构建逻辑的外观。它的目的往往是提供一组清晰的方法,以明确您如何构建目标对象,并为构建过程提供流畅的感觉。

builder.WithFirstName("John").WithLastName("Smith").WithStandardCompanyAddress().Build();

4

根据dofactory,Facade是:

为子系统中的一组接口提供统一接口。 Facade定义了一个更高级别的接口,使子系统更易于使用。

而 Builder :

将复杂对象的构建与其表示分离,以便相同的构建过程可以创建不同的表示。

从描述中很明显,Facade模式不提供构造新对象的方法。Facade是一个简化的高级接口,可用于访问一组子接口。Builder描述了一种创建对象的方式。例如,StringBuilder类的唯一目的是提供一种有效的创建新字符串的方式(是的,它基于Builder模式)。


你是不是指一个简化的高级接口? - Adrian Iftode

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接