「Head First 設計模式「 :策略模式

策略模式 問題的描述: 需求:開發一個鴨子游戲,能游泳,有外觀,實現類圖如下: 增加的需求: 1. 加入飛行功能 2. 加入呱呱叫的功能。。。等等,暫時的解決方式如下: 上線後出現了些問題: 1. 所有的鴨子都能叫嗎?木頭鴨子呢? 2. 所有的鴨子都能飛嗎?木頭鴨子呢?橡皮鴨子呢? 總結下,使用繼承的缺點: 代碼在多個子類中重複 運行時的行爲不容易改變 很難知道鴨子的全部行爲 改變會牽一髮動全身,
相關文章
相關標籤/搜索