Junior — Middle
Mis on Factory mustri peamine funktsioon objektorienteeritud programmeerimises?
sobes.tech AI
Vastus AI-lt
Objektide suunatud programmeerimises on Factory muster mõeldud objektide loomiseks ilma, et peaks otse määrama loodava objekti konkreetset klassi. Selle peamine funktsioon on kapseldada objekti loomise loogika, mis võimaldab:
- vabaneda range sõltuvuse koodist konkreetsetest klassidest,
- lihtsustada koodi laiendamist ja hooldust (näiteks uute objektitüüpide lisamine),
- keskendada objektide loomine, mis parandab loetavust ja haldamist.
Lihtne Factory näide Java-s:
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");
}
}
// Kasutamine:
Animal animal = AnimalFactory.createAnimal("dog");
animal.speak(); // Väljund: Woof