Junior — Middle
Aká je hlavná funkcia vzoru Factory v objektovo orientovanom programovaní?
sobes.tech AI
Odpoveď od AI
Vzor Factory v objektovo orientovanom programovaní je určený na vytváranie objektov bez nutnosti priameho špecifikovania konkrétnej triedy vytváraného objektu. Jeho hlavnou funkciou je enkapsulácia logiky tvorby objektov, čo umožňuje:
- odstrániť pevné závislosti kódu od konkrétnych tried,
- zjednodušiť rozširovanie a údržbu kódu (napríklad pridanie nových typov objektov),
- centralizovať tvorbu objektov, čo zlepšuje čitateľnosť a správu.
Príklad jednoduchého Factory v Jave:
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žitie:
Animal animal = AnimalFactory.createAnimal("dog");
animal.speak(); // Vypíše: Woof