Содержание
- 2. ... Абстрактная фабрика
- 10. Структура паттерна Builder
- 13. Отношения между участниками Клиент конфигурирует распорядителя (Director) экземпляром конкретного строителя. Распорядитель вызывает методы строителя для конструирования
- 16. Пример кода на С++
- 17. // Product class Pizza { private: std::string dough; std::string sauce; std::string topping; public: Pizza() { }
- 18. // Director class Waiter { private: PizzaBuilder* pizzaBuilder; public: Waiter() : pizzaBuilder(NULL) {} ~Waiter() { }
- 19. // Abstract Builder class PizzaBuilder { protected: std::shared_ptr pizza; public: PizzaBuilder() {} virtual ~PizzaBuilder() {} std::shared_ptr
- 20. // ConcreteBuilder class SpicyPizzaBuilder : public PizzaBuilder { public: SpicyPizzaBuilder() : PizzaBuilder() {} ~SpicyPizzaBuilder() {} void
- 23. Результаты использования паттерна Есть возможность изменять внутреннею структуру создаваемого продукта (или создать новый продукт). продукт конструируется
- 25. Скачать презентацию