Junior — Middle
90
Какая роль у шаблона проектирования Factory и в каких случаях его используют?
Сұралған компаниялар
Геомикс
AI-дан жауап
sobes.tech AI
Шаблон проектирования Factory (фабрика) используется для создания объектов без необходимости явно указывать конкретный класс создаваемого объекта. Он инкапсулирует логику создания объектов, позволяя клиентскому коду работать с абстракциями, а не с конкретными реализациями.
Основные случаи использования:
- Когда нужно создавать объекты из семейства классов, которые реализуют общий интерфейс.
- Когда создание объекта сложное или требует дополнительной логики.
- Для упрощения поддержки и расширения кода, позволяя добавлять новые типы объектов без изменения клиентского кода.
Пример на C#:
public interface IShape {
void Draw();
}
public class Circle : IShape {
public void Draw() => Console.WriteLine("Drawing Circle");
}
public class Square : IShape {
public void Draw() => Console.WriteLine("Drawing Square");
}
public class ShapeFactory {
public IShape GetShape(string shapeType) {
return shapeType.ToLower() switch {
"circle" => new Circle(),
"square" => new Square(),
_ => null
};
}
}
// Использование
var factory = new ShapeFactory();
IShape shape = factory.GetShape("circle");
shape.Draw();
Таким образом, Factory упрощает создание объектов и повышает гибкость архитектуры.