Builder Pattern in Python
Aprende Builder Pattern in Python con un ejemplo práctico que puedes editar y ejecutar online.
¿Qué es Builder Pattern?
Aprende Builder Pattern in Python con un ejemplo práctico que puedes editar y ejecutar online.
¿Cuándo se utiliza?
- Resolver problemas recurrentes de diseño de objetos con estructuras probadas.
- Desacoplar responsabilidades para facilitar la extensión y las pruebas del código.
- Usar un vocabulario de diseño común al hablar de arquitectura con el equipo.
Código de ejemplo
main.py
class ReportBuilder:
# Builder: assemble a complex value one optional part at a time.
def __init__(self):
self.parts = []
def add_title(self):
self.parts.append("title")
return self
def add_chart(self):
self.parts.append("chart")
return self
def build(self):
# Hide the final assembly behind one operation.
return "Report: " + ", ".join(self.parts)
report = ReportBuilder().add_title().add_chart().build()
print(report)
Resultado esperado
Report: title, chart
Cómo funciona
Este ejemplo muestra Builder Pattern in Python. Cambia los valores de entrada para explorar el código.
Cambia los valores y ejecuta el programa en el compilador Python online de CodeUtility sin instalar Python.
Ejercicios prácticos
Modifica las entradas y prueba casos límite antes de usar conjuntos de datos mayores.
- Sustituye el dominio del ejemplo conservando la estructura del patrón.
- Compara el patrón con una implementación más sencilla y explica las ventajas y desventajas.
- Escribe pruebas para cada participante antes de añadir otra implementación.