Android設計模式源碼解析之策略模式
策略模式定義了一系列的算法,并將每一個算法封裝起來,而且使它們還可以相互替換。策略模式讓算法獨立于使用它的客戶而獨立變化。
注:針對同一類型操作,將復雜多樣的處理方式分別開來,有選擇的實現各自特有的操作。
模式的使用場景
1.針對同一類型問題的多種處理方式,僅僅是具體行為有差別時。
2.需要安全的封裝多種同一類型的操作時。
3.出現同一抽象多個子類,而又需要使用if-else 或者 switch-case來選擇時。
簡單實現的介紹
通常如果一個問題有多個解決方案或者稍有區別的操作時,最簡單的方式就是利用if-else or switch-case方式來解決,對于簡單的解決方案這樣做無疑是比較簡單、方便、快捷的,但是如果解決方案中包括大量的處理邏輯需要封裝,或者處理方式變動較大的時候則就顯得混亂、復雜,而策略模式則很好的解決了這樣的問題,它將各種方案分離開來,讓操作者根據具體的需求來動態的選擇不同的策略方案。
android實例
動畫animation的各種插值器Interpolator
策略模式
最后編輯于 :
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
- 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
- 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
- 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
推薦閱讀更多精彩內容
- 二十三種設計模式 - 策略模式 策略模式簡介 模式動機 完成一項任務,往往可以有多種不同的方式,每一種方式稱為一個...
- 【學習難度:★☆☆☆☆,使用頻率:★★★★☆】直接出處:策略模式梳理和學習:https://github.com/...
- 策略模式 1. 策略模式介紹 在軟件開發中也常常遇到這樣的情況:實現某一個功能可以有多種算法或者策略,我們根據實際...