public Pizza(IPizzaType type, Money basePrice, IToppings toppings) { _type = type; _basePrice = basePrice; _toppings = toppings; }
public IPizza As(IPizzaType pizzaType) => pizzaType.Create(_toppings.Copy());
public Pizza(IPizzaType type, Money basePrice) : this(type, basePrice, new Toppings()) { }