Android面試輕鬆搞定設計模式:六大原則+三大分類+詳細總結

Android面試輕鬆搞定設計模式:六大原則+三大分類+詳細總結
2020年,咱們已通過了5天,這樣說來,春招的也快來了,之前總結了很多面試題分享給你們git

今天就給你們詳細總結一下設計模式,春招可不能倒上面github

第一次看文章的朋友能夠關注我,會不按期發佈大廠面試題、Android架構技術知識點及解析等內容,還有學習PDF+源碼筆記+面試文檔+進階視頻分享面試

設計模式六大原則

a.單一職責原則

就一個類來講,應該只有一個引發它變化的緣由設計模式

一個類作一件事情,避免職責過多。好比這種狀況是不太好的,在一個Activity中既有bean文件,又有http請求,還有adapter等等,這就致使咱們須要修改任何一個東西的時候都會致使Activity的改變,這樣一來就有多個引發它變化的緣由,不符合單一職責原則架構

b.開放封閉原則

類,模塊,函數應該是能夠擴展的,可是不能夠修改ide

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

c.里氏替換原則

全部引用基類的地方,必須能夠透明的時候其子類的對象學習

里氏替換原則是實現開放封閉原則的重要方式之一,咱們知道,使用基類的地方均可以使用子類去實現,由於子類擁有基類的全部方法,因此在程序設計中儘可能使用基類類型對對象進行定義,在運行時肯定子類類型。設計

d.依賴倒置原則

高層模塊不該該依賴於底層模塊,二者都應該依賴於抽象,抽象不該該依賴於細節,細節應該依賴於抽象代理

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

e.迪米特原則(最少知識原則)

一個軟件實體應該儘量少的與其餘實體發生相互做用

迪米特原則要求咱們在設計系統時,儘可能減小對象之間的交互

f.接口隔離原則

一個類對另外一個類的依賴應該創建在最小的接口上

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

固然想看以往總結的學習內容和麪試文章能夠看個人GitHub:https://github.com/Meng997998/AndroidJX

Android面試輕鬆搞定設計模式:六大原則+三大分類+詳細總結

設計模式的分類

設計模式分爲三類

####a.建立型設計模式

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

####b.結構型設計模式

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

####c.行爲型設計模式

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

最後

關注我,會不按期發佈大廠面試題、Android架構技術知識點及解析

相關文章
相關標籤/搜索