Head First設計模式:(三)裝飾者模式

星巴茲咖啡準備更新訂單系統,以合乎他們的飲料供應需求。 他們原先的類設計爲: 這樣的訂單系統沒有辦法考慮到咖啡調料的部分,把加入不同調料的咖啡看做不同的類會導致類爆炸(每個類的cost方法計算出咖啡加調料的價錢): 很明顯,這樣的系統難以維護,一旦牛奶的價錢上揚或新增一種焦糖調料,系統將難以改變。 採用實例變量和繼承的設計也許能解決一些問題: Beverage作爲一個飲料類,加上實例變量代表是否加
相關文章
相關標籤/搜索