Builder

  1. explain the client interaction in the Builder pattern to make the final object
  2. describe how the Builder pattern isolates the client from the details of the complex object being built
  3. describe the considerations for defining the Builder class interface
  4. distinguish the process of construction from the product of construction
  5. describe how the Builder pattern decouples process and product.
  6. explain the issues with adding new part types to a Builder pattern and specify some mitigation strategies
  7. specify a mechanism for enforcing semantic constraints within a Builder pattern
  8. specify how the Builder pattern can be applied to building composite objects