Skip to content

Files

Latest commit

20dfa02 · Dec 27, 2023

History

History
43 lines (34 loc) · 637 Bytes

File metadata and controls

43 lines (34 loc) · 637 Bytes

Builder

https://refactoring.guru/ja/design-patterns/builder

Loading
classDiagram
  class Client

  class Director {
    builder
    construct()
  }

  class Builder {
    <<Interface>>
    buildPart1()
    buildPart2()
    buildPart3()
  }

  class ConcreteBuilder1 {
    buildPart1()
    buildPart2()
    buildPart3()
    getResult()
  }

  class ConcreteBuilder2 {
    buildPart1()
    buildPart2()
    buildPart3()
    getResult()
  }

  ConcreteBuilder1 ..|> Builder
  ConcreteBuilder2 ..|> Builder

  Director ..> Builder

  Client ..> Director: use
  Client ..> ConcreteBuilder1: use
  Client ..> ConcreteBuilder2: use