Назад к вопросам
Junior — Middle
62
Какую задачу решает паттерн Builder в процессе построения объектов?
Ответ от нейросети
sobes.tech AI
Паттерн Builder решает задачу поэтапного и гибкого построения сложных объектов, особенно когда объект имеет много параметров или вариантов конфигурации. Вместо создания объекта с большим числом параметров в конструкторе, Builder позволяет:
- Отделить процесс создания объекта от его представления.
- Построить объект по частям, вызывая методы установки параметров.
- Избежать конструктора с длинным списком аргументов.
Пример на Java:
public class User {
private String name;
private int age;
private String address;
private User(Builder builder) {
this.name = builder.name;
this.age = builder.age;
this.address = builder.address;
}
public static class Builder {
private String name;
private int age;
private String address;
public Builder setName(String name) {
this.name = name;
return this;
}
public Builder setAge(int age) {
this.age = age;
return this;
}
public Builder setAddress(String address) {
this.address = address;
return this;
}
public User build() {
return new User(this);
}
}
}
// Использование:
User user = new User.Builder()
.setName("Иван")
.setAge(30)
.setAddress("Москва")
.build();
Такой подход улучшает читаемость и удобство создания объектов.