Abstract Factory
Última actualización
¿Te fue útil?
Última actualización
¿Te fue útil?
Según el libro "Patrones de Diseño" el patrón Abstract Factory "proporciona una interfaz para crear familias de objetos relacionados o que dependen entre sí, sin especificar sus clases concretas".
Kit
FabricaAbstracta:
declara una interfaz para operaciones que crean variables producto abstractas.
FabricaConcreta:
implementa las operaciones para crear variables producto concretos.
ProductoAbstracto:
declara una interfaz para un tipo de variable producto.
ProductoConcreto:
define una variable producto para que sea creado por la fábrica correspondiente.
implementa la interfaz ProductoAbstracto.
Cliente:
solo usa interfaces declaradas por los tipos de datos FabricaAbstracta y ProductoAbstracto.
No se observan impedimentos y/o modificaciones de la estructura original del patrón para su implementación en Go.
La FabricaAbstracta y ProductoAbstracto se definen como interfaces por simplificación.
En este ejemplo queremos comprar distintos tipos de puertas de madera (madera o metal). Al realizar el pedido el local de venta debe encargar cada puerta a distintos fabricantes, ya que quien realiza la puerta de madera no la hace de metal y viceversa.
Implementación:
Se puede probar la implementación del patrón de la siguiente forma:
|
Atención: Esta publicación se encuentra abandonada. Puede acceder a la versión vigente en