Shows the Builder Pattern in combination with vehicles.
https://www.dofactory.com/net/builder-design-pattern
- Multiple constructor in your class and might expand
- Avoiding multiple constructor parameter
- Maintaining a given sequence when building an object
Source: https://www.youtube.com/watch?v=CDZniFqC4cI&t=11m50s
Difference between Factory and Builder Pattern (Metapher)
Consider a restaurant. The creation of "today's meal" is a factory pattern, because you tell the kitchen "get me today's meal" and the kitchen (factory) decides what object to generate, based on hidden criteria.
The builder appears if you order a custom pizza. In this case, the waiter tells the chef (builder) "I need a pizza; add cheese, onions and bacon to it!" Thus, the builder exposes the attributes the generated object should have, but hides how to set them.