施工模式中的两个概念,指挥者和建造者定义比较清晰并不难理解。
模式定义
将创建复杂目标实体的工作分离,保持相同制造流程的情况下,创建不同的目标实例
Separate the construction of a complex object from its representation.
By doing so the same construction process can create different
representations.
施工模式中的一个关键概念是目标实体的复杂性,模式的目的就是将复杂实体的构建过程抽象和统一起来,可以由一个预先定义好的流水线管理
如示例图中所描述,复杂实体作为最后产出物,从创建者的getResult获取
很有趣的是,建造者的接口中并不定义获取产品getResult的接口,原因是施工模式关注的只是对制作过程的管理,而不是对产品本身继承性的管理(产品的管理,由两个工厂类考虑)
指挥者对构造过程(流水线)的管理在construct中实现,建造者的实体类负责具体实体的创建
使用者选择具体需要的建造者,同时使用预先定义好的指挥者(构造流水construct实际上可以是静态的)
最终的产品实例是从实际创建类中直接获取,因为与建造过程无关
时间: 2024-11-29 05:54:03