Debes usar un cliente de SMS de un tercero cuya interface difiere de tu Notifier.send(to, text). ¿Qué patrón usas?
Opciones
- Adapter (Opción correcta)
- Facade
- Decorator
- Command
Respuesta
Adapter
Por qué
Un Adapter es un pequeño wrapper que convierte una interface en la que espera tu código, como un adaptador de enchufe de viaje.
Tu SmsAdapter.send(to, text) llama por dentro al client.messages.create(dest=..., body=...) del proveedor.
El resto de tu código sigue usando Notifier.send y nunca conoce la API del proveedor.
Recuerda
Adapter = traducir una interface a otra.