Паттерны проектирования: абстрактная Фабрика, фабричный метод против



Примечание: вопросы находятся в конце поста.



Я прочитал другие потоки stackoverflow относительно абстрактный завод против Заводского метода. Я понимаю смысл каждого паттерна. Однако я не совсем понимаю это определение.




Заводской метод определяет интерфейс
для создания объекта, но позволяет
подклассы решают, какой из них
создать экземпляр. Заводской метод позволяет
классы откладывают создание экземпляра до
подклассы.



напротив, абстрактная Фабрика
предоставляет интерфейс для создания
семьи родственных или зависимых лиц
объекты без указания их
конкретный класс.




-Джон Feminella



The Абстрактная Фабрика выглядит очень похоже на Метод Фабрики. Я нарисовал несколько классов UML, чтобы проиллюстрировать свою точку зрения.



Примечание:




  • схемы из www.yuml.com таким образом, они не идеально ориентированы. Но это бесплатный сервис :).

  • диаграммы могут быть не идеальными. Я все еще изучаю г шаблоны проектирования.


Способ Завода:



Factory Method



абстрактная Фабрика (только 1):



Abstract Factory (only 1 member)



абстрактная Фабрика (подробнее участники):



alt text



вопросы:




  1. если Абстрактная Фабрика имеет только один создатель и один продукт, это все еще Абстрактная Фабрика шаблон? (интерфейс для создания семьи)

  2. может Метод Фабрики конкретный создатель создается из интерфейса или он должен быть из класса? (классы откладывают создание экземпляров подклассы)

  3. если абстрактная фабрика может иметь только одного создателя и один продукт, это единственная разница между Абстрактная Фабрика и Метод Фабрики что создатель для первого-это интерфейс, а создатель для второго-класс?

880   0  

Comments

    Ничего не найдено.