工廠設計模式的特點是建立和管理同一類協議族的功能類。
在實際專案中可以應用於登陸,驗證等業務模組。
比如登陸模組,登陸方式有密碼登陸,簡訊登陸,人臉/指紋登入,手勢登入,聲紋登入,ocr生物識別登入等等。
若要是寫在業務層,隨便一點小改動都改的要死,就算寫成工具也會在業務層寫上一堆的邏輯判斷+登入方式的初始化及其邏輯呼叫,可以說不易拓展,切維護成本高,**量也極大。
這個時候工廠模式就體現出了其價值,其一,通過工廠來建立管理其登入方式,每種登陸方式的具體實現,完全寫在其對應協議的實現類中,只要你的協議介面設計的靈活且擴充套件性強,那麼後期的新增功能只要實現類去實現這個協議的介面即可,完全不需要考慮業務層寫了什麼,這就體現了極強的擴充套件性,對於其**管理,也只需要檢視開發人員新開發的業務類即可。其二,如果已開發的業務有變動,也只需要修改調整其實現類,完全不用擔心其他模組及業務層的改動,這就體現了可維護性強。
1.業務層**
2 工廠管理類實現,分別管理著ui工廠和業務邏輯工廠
可以在資料夾中看到,各種登陸方式可以根據protocol可以去實現其功能,優化建議就是,每個協議族定義乙個協議實現的基類,異常處理在基類裡處理
最後想說的是,設計模式還是要理解其思想,不要太侷限其樣式,這樣才能運用自如,其實對於大多數場景,都應用不到抽象工廠這一層,簡單工廠足以,在我的專案中對抽象工廠形式上做了改良,應該讓設計模式為你的業務場景及模組服務,而不是把業務硬套在設計模式上。還是那句話,注重理解。
設計模式 工廠設計模式
用於建立物件的介面,交給子類去實現 我們舉乙個生產nokia的例子 public abstract class nokiaphone先試定義了乙個抽象類,抽象出方法poweronphone 模擬手機開機的動作 public class nokia5200 extends nokiaphone pub...
設計模式 工廠設計模式
工廠模式分為工廠方法模式和抽象工廠模式 工廠方法模式分為 普通工廠模式,就是建立乙個工廠類,對實現了同一介面的一些類進行例項的建立。多個工廠方法模式,是對普通工廠方法模式的改進,在普通工廠方法模式中,如果傳遞的字串出錯,則不能正確建立物件,而多個工廠方法模式是提供多個工廠方法,分別建立物件。靜態工廠...
設計模式 工廠模式(簡單工廠)
一 簡單工廠 定義 簡單工廠模式 factory pattern 屬於類的創新型模式,又叫靜態工廠方法模式 static factorymethod pattern 是通過專門定義乙個類來負責建立其他類的例項,被建立的例項通常都具有共同的父類。特點 工廠類直接實現,乙個產品介面,乙個工廠類可以產生多...