Шаблон творческого дизайна

Перед тем, как начать, перейдите сюда для простого введения в шаблоны проектирования и указатель для всех углубленных руководств по шаблонам проектирования.



Определенный

  • Заводской метод - это шаблон создания, который использует заводские методы для решения проблемы создания объектов без необходимости указывать точный класс объекта, который будет создан.
  • Он позволяет делегировать логику создания экземпляров дочерним классам.

Почему, когда?

  • Полезно, когда неизвестно, какой именно подкласс потребуется во время выполнения.
  • Шаблон Заводской метод можно использовать, когда в классе есть общая / универсальная реализация, но требуемый подкласс определяется динамически во время выполнения.

Достаточно, покажи мне что-нибудь

Следующий пример - это все, что вам нужно, чтобы понять этот шаблон проектирования.

Нам нужно иметь колесо суперкласса.

Суперкласс в шаблоне проектирования фабрики может быть интерфейсом, абстрактным классом или обычным классом Java. В нашем примере мы используем абстрактный класс.

Теперь у нас есть два подкласса CarWheel и BikeWheel, как показано ниже.

Обратите внимание, что оба класса расширяют класс Wheel.

Теперь, когда у нас есть готовые суперклассы и подклассы, мы можем написать наш фабричный класс. Вот базовая реализация.

У нас есть суперкласс и подкласс, у нас может быть фабричный класс: WheelFactory.

Давайте устроим тест-драйв: TestWheelFactory class

Вот и все. Действительно! Давай, попробуй это.

Код: Найдите код, использованный в этой статье, на github.

Если вам понравился этот пост, нажмите кнопку хлопка 👏 несколько раз ниже, чтобы выразить свою поддержку!

Десять хлопков, двадцать, шестьдесят?