1.概念:git
在策略模式(Strategy Pattern)中,一個類的行爲或其算法能夠在運行時更改。這種類型的設計模式屬於行爲型模式。github
在策略模式中,咱們建立表示各類策略的對象和一個行爲隨着策略對象改變而改變的 context 對象。策略對象改變 context 對象的執行算法。算法
2.注意:設計模式
主要解決:在有多種算法類似的狀況下,使用 if...else 所帶來的複雜和難以維護。app
什麼時候使用:一個系統有許多許多類,而區分它們的只是他們直接的行爲。ide
注意事項:若是一個系統的策略多於四個,就須要考慮使用混合模式,解決策略類膨脹的問題。學習
3.使用場景: this
場景:商城活動中有幾種,滿減,打折,送積分....spa