Open Dafnemami opened 3 months ago
No entiendo del todo la pregunta. Pero esa parte se refiere a que el cliente le entrega un objeto Builder (o que herede de Builder) al director y, con eso, el director podrá armar el objeto deseado.
La idea es que el director siempre ejecuta ciertos Steps. Esos Steps son métodos abstractos (o virtuales) que cada clase que herede de Builder debe (puede) sobreescribir. Así el código del director es siempre el mismo. E.j., ejecuta Step1(), Step3() y Step5(). Pero lo que haga cada uno de esos métodos depende del Builder que le des al director (y como cada uno de ellos sobreescribió los métodos Step1, Step3 y Step5).
Hola! Me queda la duda con lo surbrayado en rojo: un director es una entidad estática o puede dinámica ir cambiando los builders que ejecuta? Esto lo pregunto pues no entiendo como el hecho de que el cliente logre asociar un builder a un director asegura que el resto de los steps(builders) señalados en el director son correctos.