1) Должен ли я реализовать фабричный метод
картина, точно так же
определяется GoF. Я также имею в виду
UML-диаграмма приведена на сайте www.dofactory.com
для фабричного метода).
Делай все, что имеет смысл для тебя . Шаблоны - это просто ориентиры, а не категориальные законы природы.
Более того, шаблоны в GoF не являются исчерпывающими. Вы обнаружите, что открываете и внедряете шаблоны, которые никогда не появляются в книге и даже не имеют названия. И это хорошая вещь .
2) Почему шаблон фабричного метода
GoF не показан принимающий параметр?
Шаблон метода фабрики - это просто особый экземпляр производного класса. В частности, у вас есть абстрактный класс с абстрактным методом и любое количество производных классов, которые реализуют метод. Обычно этот реализованный метод возвращает объект другого типа - это то, что делает его творческим шаблоном.
Итак, используя пример на DoFactory.com , классы возвращают постоянный набор объектов. Ничто в принципе не мешает пользователям передавать какой-либо параметр в фабричный метод.
Я понимаю, что
FactoryMethod должен быть передан
параметр, который будет использоваться в
переключить случай, а затем на основе
значение в корпусе переключателя, разное
объекты класса создаются и
вернулся к звонящему.
Вы, конечно, можете реализовать это таким образом, если это имеет смысл для вас.