Предположим, что в будущем будет больше пицц. Что было бы лучше, чтобы сделать мой код более надежным и избежать зависимости от конкретных классов из класса Pizza?
class Pizza:
def order(pizza_type):
pizza = none
if pizza_type == "cheese":
pizza = CheezePizza()
elif pizza_type == "pepperoni":
pizza = PepperoniPizza()
elif pizza_type == "veggie":
pizza = VeggiePizza()
pizza.prepare()
pizza.bake()
return pizza
Что лучше: 1) шаблон проектирования заводского метода, 2) шаблон проектирования синглтон, или 3) шаблон проектирования наблюдателя, или 4) оставить его как есть?