【发布时间】:2013-07-30 01:15:58
【问题描述】:
我对设计模式非常陌生,并且对 fluent interfaces 和 Builder 模式之间的区别感到困惑。
我了解流畅界面的概念。但是构建器模式有点令人困惑。我无法理解在 Builder 模式中使用 Director。
我可以同时使用 Builder 模式和 Fluent Interface 吗?如果是这样,那么我应该如何与导演和混凝土建筑商一起这样做?
我的问题不是关于构建器模式的优点。但是这个问题的目的是了解构建器模式和流畅界面之间的关系。
使用来自 GoF 的 Builder 的 UML 序列图进行编辑:
【问题讨论】:
-
我可以同时使用 Builder 模式和 Fluent Interface 吗? 可以,here 发布了一个很好的例子
-
我能知道这个问题与上述问题的重复吗?因为它是关于流畅界面和构建器模式之间的关系。
-
我不确定这个问题是否在副本中得到了正确回答。许多人错误地引用了 GoF Builder。 GoF 的 True Builder 允许扩展(添加)
ConcreteBuilder类,而无需修改Client类或Director类。请参阅我添加到您的问题中的序列图。方法链或流式接口不是 GoF 的 Builder。 GoF 中的示例根本不使用方法链。 -
我发现以下内容有助于找出差异。这里作者将builder模式版本1和版本2称为fluent Interfaceblog.crisp.se/2013/10/09/perlundholm/…
标签: java oop design-patterns