Builder: Construcción Paso a Paso
Construye objetos complejos paso a paso — el mismo proceso de construcción puede producir diferentes representaciones usando una interfaz fluida.
Por qué importa
Piensa en pedir una hamburguesa personalizada: pan, carne, ingredientes — especificas cada paso; el personal ensambla el resultado. El código enfrenta el mismo problema: una clase con muchos parámetros opcionales obliga a los llamadores a pasar listas de argumentos largas e ilegibles donde la posición determina el significado. Email("a@x.com", "b@x.com", "Hi", "Body", True, False, None, "high", []) — ¿qué significa False? El patrón Builder reemplaza ese desorden con una interfaz fluida donde cada paso se nombra a sí mismo.
Variaciones
Los dataclasses de Python con argumentos solo de palabra clave ofrecen una alternativa ligera para casos más simples. Los usuarios de TypeScript suelen usar objetos de opciones (new Email({ from, to, subject })). El Builder completo brilla cuando la construcción es de varios pasos, implica validación entre pasos, o cuando el mismo proceso necesita producir diferentes tipos de salida.
💡Conclusión clave
Cuando tu constructor tiene más de 3–4 parámetros, considera un Builder — hace que cada sitio de llamada sea autodocumentado y protege a los llamadores de futuros cambios de parámetros.
🔧 Algunos ejercicios pueden tener errores. Si algo parece incorrecto, usa el botón Feedback (abajo a la derecha) para reportarlo — nos ayuda a corregirlo rápido.
Pista: Cuando tu constructor tiene más de 3-4 parámetros, considera un Builder — hace que cada sitio de llamada sea autodocumentado.
✗ Tu versión