策略模式:它定義了算法家族,分別封裝起來,讓它們之間能夠互相替換,次模式讓算法的變化,不會影響到使用算法的客戶。 算法
使用的是聚合關係單元測試
策略模式是一種定義一系列算法的方法,從概念上來看,全部這些算法完成的都是相同的工做,只是實現不一樣,它能夠以相同的方式調用全部的算法,減小了各類算法類與使用算法類之間的耦合。全部策略之間有一個抽象的基類,繼承的類析取出這些算法中的公共功能。測試
策略模式使得客戶端只須要提供更少的類。繼承
策略模式,簡化了單元測試,由於每一個算法都有本身的類,能夠經過本身的接口單獨測試。接口
策略模式就是用來封裝算法的,但在實踐中,咱們發現能夠用它來封裝幾乎任何類型的規則,只要在分析過程當中聽到須要在不一樣時間應用不一樣的業務規則,就能夠考慮使用策略模式處理這種變化的可能性。方法