[Design Pattern] Strategy 模式
上一篇有提到,Template Method Pattern 違反了 DIP 原則,在寫程式時最需要注意的就是耦合性,倘若程式之間的耦合性高,修改一個類別結果造成所有繼承他的類別都需要修改,這樣的維護成本太高,而 Strategy Pattern 提供了解法。接續上一篇的範例,我們使用 Strategy 模式再重寫一次,會分為以下幾個步驟:
- 定義料理的抽象介面
- 實作中式料理類別
- 實作料理類別
上一篇有提到,Template Method Pattern 違反了 DIP 原則,在寫程式時最需要注意的就是耦合性,倘若程式之間的耦合性高,修改一個類別結果造成所有繼承他的類別都需要修改,這樣的維護成本太高,而 Strategy Pattern 提供了解法。接續上一篇的範例,我們使用 Strategy 模式再重寫一次,會分為以下幾個步驟:
Template Method Pattern,顧名思義它就是一個模板,必須要在它指定的框架內完成實作。
所以要使用 Template Method Pattern,可以分為幾個步驟: