JS паттерны: Фабрика
Алоха товарищи фронты! Сегодня хотел бы написать вкратце о том что такое паттерн фабрика.
И так что это и зачем нужен: данный шаблон проектирования используется для создания объектов, не указывая конкретный класс, а используя интерфейс для их создания. Он предоставляет удобный способ для создания объектов различных типов без необходимости написания отдельного кода для каждого из них.
Пример:class Car {constructor(make, model, year) {this.make = make;this.model = model;this.year = year;
}
}
class CarFactory {createCar(make, model, year) {return new Car(make, model, year); }}const carFactory = new CarFactory();const camry = carFactory.createCar('Toyota', 'Camry', 2021); // создание объекта типа Car с помощью фабрики
В данном примере класс Car представляет объект, который мы хотим создать, а класс CarFactory является фабрикой, которая создает эти объекты. Вызывая метод createCar фабрики, мы можем создать объект Car с нужными параметрами.
Я думаю что множество из нас уже знает что это такое и использовали это на практике не раз, но надеюсь что это было полезно для тех кто не сталкивался с этим паттерном ранее.