Sobes.tech
Junior — Middle

¿Cuál es la función principal del patrón Factory en la programación orientada a objetos?

sobes.tech AI

Respuesta de la IA

El patrón Factory en programación orientada a objetos está diseñado para crear objetos sin necesidad de especificar directamente la clase concreta del objeto que se va a crear. Su función principal es encapsular la lógica de creación de objetos, lo que permite:

  • Eliminar la dependencia rígida del código respecto a clases específicas.
  • Simplificar la expansión y el mantenimiento del código (por ejemplo, agregar nuevos tipos de objetos).
  • Centralizar la creación de objetos, mejorando la legibilidad y la gestión.

Ejemplo simple de Factory en Java:

interface Animal {
    void speak();
}

class Dog implements Animal {
    public void speak() { System.out.println("Woof"); }
}

class Cat implements Animal {
    public void speak() { System.out.println("Meow"); }
}

class AnimalFactory {
    public static Animal createAnimal(String type) {
        if ("dog".equalsIgnoreCase(type)) return new Dog();
        else if ("cat".equalsIgnoreCase(type)) return new Cat();
        else throw new IllegalArgumentException("Unknown animal type");
    }
}

// Uso:
Animal animal = AnimalFactory.createAnimal("dog");
animal.speak(); // Imprime: Woof