Skip to content

Latest commit

 

History

History
19 lines (14 loc) · 608 Bytes

README.md

File metadata and controls

19 lines (14 loc) · 608 Bytes

Guided Fluent Builder

Example of creating a product with a 'Guided Fluent Builder'

  • The builder is a 'guided builder' with a sequence of steps.
  • The builder first enforces the required properties.
  • The builder then allows for all optional properties.

  • The desired product can only be instantiated via the builder.
  • Direct instantiation of a product is therefore prohibited.

  • Only the interface of the product is exposed to the client.
  • The resulting product is immutable.

  • The builder has a fluent syntax.
  • The builder handles a nested subclass with lambda syntax.