Builder es un patrón de diseño creacional con ámbitos de objeto. Nos ayuda a crear objetos complejos de una forma sencilla usando un procedimiento de "paso por paso". Esto facilita el trabajo enormemente cuando tenemos objetos con muchos atributos, pero no necesitamos establecer de inicio todos sus valores, o no siempre establecemos los mismos. De esta forma nos guía en la construcción de estos obejtos. También ayuda en el ensamblado de objetos complejos que están formados por otros objetos.
Debido a esto, este patrón es una de las formas más utilizadas para la creación de objetos; ya que es un elemento externo a los objetos que estamos creando, pero con la suficiente información para ayudarnos en el ensamblaje correcto de estos
En este tutorial te explico los detalles de este patrón, y te muestro tres estrategias diferentes de implementación.