Если быть точным: это Фабричный шаблон , а не Фабричный метод .
Разница в том, что в Фабричном шаблоне у вас есть отдельная фабрикаobject (DriveableFactory
), тогда как в шаблоне метода Factory метод create()
будет членом базового класса Driveable
.Я не знаком с php, и шаблон, похоже, не применим к вашему конкретному сценарию, поэтому я не могу привести вам пример кода здесь.
Но в любом случае вы должны различать две модели.Я знаю, что вокруг них много путаницы, и запись в Википедии для Шаблон фабричного метода просто неверна - среди множества других источников, которые можно найти в Интернете.Но лучше быть точным в этом, потому что для общения важно иметь в виду одно и то же, когда вы используете одни и те же слова ...
HTH - Томас