|
|
1
1
使构建器以这种方式填充对象的主要问题是,您的构建器将 只有 能够以这种方式创造事物。 例如,下个月,您可能会发现需要使用来自其他地方的类似数据来构建其中一个对象。 保持 separation of concerns (或) “单一责任原则” S来自 SOLID )通过将生成器保持为生成器,并使用不同的类来协调获取数据并将其传递给生成器。 它是 “错误的设计” 按你说的做?设计决策是非常主观的,应该基于当时已知和预期的需求。例如,设计原则 反对 按照我的建议做 YAGNI 和 Rule of Three . 换句话说,您必须在灵活性的增加和代码数量的增加之间取得平衡。 |
|
|
2
1
不确定你可以“建立”一个经销商,除非这是一个商店。相反,让dealer作为director对象,它调用自己的构造方法,接受builder对象作为参数。 构建器模式需要由一个或多个构建器类组成的控制器类。生成器类生成零件。 你可以制作一个抽象的建筑类,并有摩托车、汽车或船体的具体建筑商。这些构建器提供了一个方法来返回它们所承载的产品,这些产品是本实例中的部件。 |
|
3
0
你应该考虑一下
如果所有的步骤都是强制性的,并且如果您必须按顺序执行,那么构建器并不是一个很好的方法。 接下来,您应该考虑是否要更改步骤的数据提供程序。然后需要在构建器中进行某种依赖注入。例如,您可能希望从数据库、磁盘或web服务中获取源代码。 最后,您应该考虑这段代码应该做什么:
你经常看到很多
|
|
|
user1870035 · 依赖注入和流畅设计 8 年前 |
|
|
Alvp · 使用ProcessBuilder运行shell脚本 8 年前 |
|
|
SourceVisor · Java对象引用问题? 8 年前 |
|
|
progonkpa · 使用静态实例化方法在生成器类中自动连接依赖项 8 年前 |
|
|
hades · 动态URL生成器的Spring思想 8 年前 |
|
|
James · 如何使用RubyBuilder在XML标记中动态插入一些属性? 12 年前 |