使用Dagger2前你必須了解的一些設(shè)計(jì)原則
Dagger是針對(duì)Java和Android的完全靜態(tài)的編譯時(shí)依賴(lài)注入框架皮仁。這是由Square創(chuàng)建的,現(xiàn)在由Google維護(hù),根據(jù)早期版本的改編
依賴(lài)倒置原則
- 高層次的模塊不應(yīng)該依賴(lài)低層次的模塊顶掉,它們都應(yīng)該依賴(lài)于抽象催享。
- 抽象不應(yīng)該依賴(lài)于具體的實(shí)現(xiàn),具體實(shí)現(xiàn)應(yīng)該依賴(lài)于抽象驯妄。
依賴(lài)倒置原則:程序應(yīng)該依賴(lài)于抽象接口,不要依賴(lài)具體的實(shí)現(xiàn)。
簡(jiǎn)單的說(shuō)瓶蝴,應(yīng)該對(duì)抽象就行編程,不要對(duì)實(shí)現(xiàn)就行編程租幕,這樣就可以達(dá)到解耦的目的舷手。
面向?qū)ο蟮拈_(kāi)發(fā)一般情況下抽象的變化概率很小,讓用戶(hù)程序依賴(lài)于抽象令蛉,實(shí)現(xiàn)的細(xì)節(jié)也依賴(lài)于抽象聚霜。即使實(shí)現(xiàn)細(xì)節(jié)不斷變動(dòng)狡恬,只要抽象不變珠叔,客戶(hù)程序就不需要變化。這大大降低了客戶(hù)程序與實(shí)現(xiàn)細(xì)節(jié)的耦合度
圖解面相對(duì)象
圖解面相對(duì)象.jpg