Junior — Middle
Mi a Factory minta fő funkciója az objektumorientált programozásban?
sobes.tech MI
Válasz az MI-től
Az objektumorientált programozásban a Factory minta arra szolgál, hogy objektumokat hozzon létre anélkül, hogy közvetlenül meg kellene határozni a létrehozandó objektum konkrét osztályát. Fő funkciója az objektumok létrehozási logikájának kapszulázása, ami lehetővé teszi:
- a kód szigorú függőségének megszüntetését konkrét osztályoktól.
- a kód bővítésének és karbantartásának egyszerűsítését (pl. új típusú objektumok hozzáadása).
- az objektumok létrehozásának központosítását, ami javítja az olvashatóságot és a kezelhetőséget.
Egyszerű Factory példa Java-ban:
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");
}
}
// Használat:
Animal animal = AnimalFactory.createAnimal("dog");
animal.speak(); // Kimenet: Woof