Назад к вопросам
Junior — Middle
68
Объясните концепцию паттерна Factory Method и его основное применение в проектировании программного обеспечения.
Ответ от нейросети
sobes.tech AI
Паттерн Factory Method — это порождающий шаблон проектирования, который определяет интерфейс для создания объекта, но позволяет подклассам решать, какой класс инстанцировать. Это позволяет делегировать создание объектов подклассам, не завязываясь на конкретных классах в коде клиента.
Основное применение — когда система должна быть независимой от способа создания, композиции и представления объектов, или когда нужно предоставить подклассам возможность изменять тип создаваемых объектов.
Пример на Java:
// Интерфейс продукта
interface Product {
void use();
}
// Конкретный продукт
class ConcreteProduct implements Product {
public void use() {
System.out.println("Использование конкретного продукта");
}
}
// Создатель с фабричным методом
abstract class Creator {
public abstract Product factoryMethod();
public void someOperation() {
Product product = factoryMethod();
product.use();
}
}
// Конкретный создатель
class ConcreteCreator extends Creator {
public Product factoryMethod() {
return new ConcreteProduct();
}
}
// Использование
public class Main {
public static void main(String[] args) {
Creator creator = new ConcreteCreator();
creator.someOperation();
}
}