Junior — Middle
Jaká je hlavní funkce vzoru Factory v objektově orientovaném programování?
sobes.tech AI
Odpověď od AI
Vzor Factory v objektově orientovaném programování je určen k vytváření objektů bez nutnosti přímo uvádět konkrétní třídu vytvářeného objektu. Jeho hlavní funkcí je enkapsulace logiky tvorby objektů, což umožňuje:
- zbavit se pevné závislosti kódu na konkrétních třídách,
- zjednodušit rozšiřování a údržbu kódu (například přidání nových typů objektů),
- centralizovat tvorbu objektů, což zlepšuje čitelnost a správu.
Příklad jednoduché Factory v Javě:
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");
}
}
// Použití:
Animal animal = AnimalFactory.createAnimal("dog");
animal.speak(); // Vypíše: Woof