Factory Method Pattern in Python
Aprende Factory Method Pattern in Python con un ejemplo práctico que puedes editar y ejecutar online.
¿Qué es Factory Method Pattern?
Aprende Factory Method 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 EmailNotification:
# Factory Method: creation is separated from object usage.
def send(self, message):
return f"Email: {message}"
class SmsNotification:
def send(self, message):
return f"SMS: {message}"
def create_notification(channel):
# Centralize the concrete-class selection.
factories = {"email": EmailNotification, "sms": SmsNotification}
return factories[channel]()
notification = create_notification("email")
print(notification.send("Hello"))
Resultado esperado
Email: Hello
Cómo funciona
Este ejemplo muestra Factory Method 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.