Patron Adapter
👉Adapter es un patrón de diseño estructural que permite la colaboración entre objetos con interfaces incompatibles.
Un adaptador es un patrón para hacer que objetos incompatibles funcionen juntos. La idea es crear una capa intermedia que convierta la interfaz de un objeto en otro. Un nombre alternativo común para el adaptador es contenedor, wrapper (envoltorio)
Ventajas y cuando utilizar:
El patrón de adaptador es útil para integrar código que no funciona bien en conjunto, sin modificar ningún código existente. Este es un ejemplo del principio abierto-cerrado: sin modificar el código fuente existente, los módulos existentes se pueden ampliar.
En el caso más simple, se puede utilizar para métodos de alias; en casos más complejos, se puede utilizar para cambiar por completo el comportamiento de un objeto. Los adaptadores pueden resultar útiles cuando los objetos que deben adaptarse provienen de bibliotecas de terceros que no se pueden modificar.
Desventajas:
Puede haber una sobrecarga de rendimiento adicional debido a las operaciones de transformación en el adaptador. Puede complicar la base del código.