策略模式與狀態模式的異同

自從知道了策略模式和狀態模式這兩個行爲類的設計模式後,就一直以爲這兩個模式有點難以區分。不只 UML 類圖看起來沒什麼區別,就連具體實現也是很是類似。通過一段時間研究,稍微有了一點理解。算法 策略模式和狀態模式都是消除含有大量 if...else 或 switch...case 這類硬編碼結構的良策,雖然不是全部硬編碼結構均可以用這兩種模式來消除。根據個人理解,能夠從其應用場景方面來區分兩個模式。
相關文章
相關標籤/搜索