Sobes.tech
Junior — Middle

Программалык камсыздоону иштеп чыгууда Factory паттернин негизги максаты эмне?

sobes.tech AI

AIден жооп

Factory (Фабрика) үлгісі жобаланған болып, клиент кодында жасалатын объектінің нақты класын көрсетпестен объектілерді жасауға арналған. Бұл:

  • Объектілерді жасау логикасын инкапсуляциялауға мүмкіндік береді.
  • Жасалатын объектілердің түрлерін ауыстыруды және кеңейтуді жеңілдетеді.
  • Кодтың икемділігін және қолдауын арттырады.

Мысалы, тікелей конструкторды шақырудың орнына, клиент қажетті объектіні параметрлер немесе конфигурация негізінде қайтаратын фабрика әдісін пайдаланады.

Pseudo-код мысалы:

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("Белгісіз түр");
    }
}

// Қолдану:
Product product = Factory.createProduct("A");