Sobes.tech
Junior — Middle

Koja je osnovna funkcija Factory šablona u objektno-orijentisanom programiranju?

sobes.tech АИ

Одговор од АИ

Шаблон фабрике у објектно оријентисаном програмирању намењен је за креирање објеката без потребе да се директно указује конкретна класа објекта који се креира. Његова главна функција је енкапсулација логике креирања објеката, што омогућава:

  • уклањање чврсте зависности кода од одређених класа,
  • поједностављивање проширења и одржавања кода (нпр. додавање нових типова објеката),
  • централизовање креирања објеката, што побољшава читљивост и управљивост.

Пример једноставне фабрике у Јави:

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");
    }
}

// Користите:
Animal animal = AnimalFactory.createAnimal("dog");
animal.speak(); // Исписује: Woof