FactoryMethod - Tensho97/Aprende-a-Aprender GitHub Wiki

Patrón Factory Method


Factroy Method

Utilidades y Ventajas

Utilidad: Separar la clase que crea los objetos, de la jerarquía de objetos a instanciar.

Ventajas:

  • Centralización de la creación de objetos.
  • Facilita la escalabilidad del sistema
  • El usuario se abstrae de la instancia a crear.

Implementación

  • Definimos el método abstracto.
abstract class Creator{
    //Definimos metodo abstracto
    public abstract Product factoryMethod();
}
  • Ahora definimos el creador concreto:
public class ConcreteCreator extends Creator{
    public Product factoryMethod() {
        return new ConcreteProduct();
    }
}
  • Definimos el producto y su implementación concreta:
 public interface Product{
    public void operacion();
}

public class ConcreteProduct implements Product{
    public void operacion(){
        System.out.println("Una operación de este producto");
    }
}
  • Ejemplo de uso:
public static void main(String args[]){
    Creator aCreator;
    aCreator = new ConcreteCreator();
    Product producto = aCreator.factoryMethod();
    producto.operacion();
}


Autor : Miguel