public Product(ProductCode code, ProductPrice price) : this(code, price, new EmptySpecialOffer()) { }
public Product(ProductCode code, ProductPrice price, ISpecialOffer specialOffer) { Code = code; Price = price; SpecialOffer = specialOffer; }
public bool TryGetProduct(ProductCode productCode, out Product product) { return(_products.TryGetValue(productCode, out product)); }