Привет, ребята: у меня есть класс строителей, который должен использоваться только один раз.Например, есть конструктор «setup», а затем метод «to ...», который указывает тип объекта, который будет построен.
Например,
AnimalBuilder a = new AnimalBuilder("myTiger");
Animal tiger = a.toTiger(4);
//or
Animal dog = a.toDog(4) ;
и т.д. .....
Однако я не хочу, чтобы Builder когда-либо использовался повторно, и поскольку он поддерживает состояние внутри (то есть, в отличие от фабрики, сборщики - это двухэтапный процессбыло завершено.Если это так, то генерируется исключение IllegalStateException.
Возможная критика этого подхода: почему я использую конструктор (а не фабрику?) .... Потому что построение этих объектов гораздо более модульно и легко понять с помощью двухэтапногоПроцесс построения - я не хочу копировать входные аргументы общего характера (первый шаг) во все конкретные методы.
1) Существует ли более простой способ убедиться, что класс построителя используется только один раз?Я думаю, что, может быть, есть библиотека Factory / Builder, которая могла бы сделать построение этих шаблонов проектирования с меньшими требованиями к котельной плите.
2) Есть ли лучший способ реализовать шаблон проектирования двухэтапного конструктора объектов, который уклоняется от меня на данный момент?