6.2019Android設計模式總結

1.設計模式六大原則

a.單一職責原則:就一個類來說,應該只有一個引起它變化的原因

一個類做一件事情,避免職責過多。比如這種情況是不太好的,在一個Activity中既有bean文件,又有http請求,還有adapter等等,這就導致我們需要修改任何一個東西的時候都會導致Activity的改變,這樣一來就有多個引起它變化的原因,不符合單一職責原則

b.開放封閉原則:類,模塊,函數應該是可以擴展的,但是不可以修改

對於擴展是開放的,對於修改是封閉的。儘量做到面對需求的改變時,我們的代碼能保持相對穩定,通過擴展的方式應對變化,而不是修改原有代碼實現

c.里氏替換原則:所有引用基類的地方,必須可以透明的時候其子類的對象

里氏替換原則是實現開放封閉原則的重要方式之一,我們知道,使用基類的地方都可以使用子類去實現,因爲子類擁有基類的所有方法,所以在程序設計中儘量使用基類類型對對象進行定義,在運行時確定子類類型。

d.依賴倒置原則:高層模塊不應該依賴於底層模塊,兩者都應該依賴於抽象,抽象不應該依賴於細節,細節應該依賴於抽象

依賴倒置原則針對的是模塊之間的依賴關係,高層模塊指調用端,底層模塊指具體的實現類,抽象指接口或抽象類,細節就是實現類。該原則的具體表現就是模塊間的依賴通過抽象發生,直線類之間不發生直接依賴關係,依賴通過接口或抽象類產生,降低耦合,比如MVP模式下,View層和P層通過接口產生依賴關係

e.迪米特原則(最少知識原則):一個軟件實體應該儘可能少的與其他實體發生相互作用

迪米特原則要求我們在設計系統時,儘量減少對象之間的交互

f.接口隔離原則:一個類對另一個類的依賴應該建立在最小的接口上

接口隔離原則的關鍵是接口以及這個接口要小,如何小呢,也就是我們要爲專門的類創建專門的接口,這個接口只對它有效,不要試圖讓一個接口包羅萬象,要建立最小的依賴關係

設計模式的分類

設計模式分爲三類

創建型設計模式

與對象創建有關包括單例模式,工廠方法模式,抽象工廠模式,建造者模式,原型模式

結構型設計模式

結構性設計模式是從程序的結構上解決模塊之間的耦合問題,包括適配器模式,代理模式,裝飾模式,外觀模式,橋接模式,組合模式和享元模式

行爲型設計模式

主要處理類或對象如何交互及如何分配職責,包括策略模式,模板方法模式,觀察者模式,迭代器模式,責任鏈模式,命令模式,備忘錄模式,狀態模式,訪問者模式,中介模式,解析器模式

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章