概述
在日常開發(fā)工作中,適當(dāng)?shù)氖褂靡恍┰O(shè)計模式,可以讓代碼擴展性更強,能更好地擁抱變化,讓代碼更加優(yōu)雅。本文主要介紹設(shè)計模式中的策略模式,并附上測試示例 Demo 供大家參考。
定義
策略模式定義了一系列的算法,并將每一個算法封裝起來,而且使它們還可以相互替換。策略模式讓算法獨立于使用它的客戶而獨立變化。
個人理解
策略模式,針對那些動作因?qū)ο蠖惖那闆r下,把每一個動作都獨立封裝起來并實現(xiàn)同一個接口,通過組合的方式賦予對象相對應(yīng)的動作,從而使得所有的動作都可以相互替換。通過策略模式,可以達到在運行時修改對象的具體動作、對象和具體動作之間解耦的效果。
設(shè)計原則
1)找出應(yīng)用中可能需要變化的地方,把它們獨立出來,不要和那些不需要變化的代碼混在一起;
2)面向接口編程,而不是面向?qū)崿F(xiàn)編程;
3)多用組合,少用繼承;