Sobes.tech
Junior — Middle

Mis on Factory mustri peamine eesmärk tarkvaraarenduses?

sobes.tech AI

Vastus AI-lt

Factory (Faktori) muster on mõeldud objektide loomiseks ilma vajaduseta määrata konkreetset klassi kliendi koodis. See võimaldab:

  • Objektide loomise loogika inkapsuleerimist.
  • Lihtsustada loodavate objektitüüpide vahetamist ja laiendamist.
  • Suurendada koodi paindlikkust ja hooldatavust.

Näiteks, selle asemel, et otse kutsuda konstruktorit, pöördub klient tehase meetodi poole, mis tagastab vajaliku objekti sõltuvalt parameetritest või konfiguratsioonist.

Pseudo-koodi näide:

interface Product {}

class ConcreteProductA implements Product {}
class ConcreteProductB implements Product {}

class Factory {
    public static Product createProduct(String type) {
        if (type.equals("A")) return new ConcreteProductA();
        else if (type.equals("B")) return new ConcreteProductB();
        else throw new IllegalArgumentException("Tundmatu tüüp");
    }
}

// Kasutamine:
Product product = Factory.createProduct("A");