前言:
最近牽頭發(fā)起公司app的重構(gòu)工作,如何通過重構(gòu)讓項目的耦合降低、開發(fā)效率提高,一直是我努力的方向,今天來學習一下一個注解框架Dagger2,然后看看如何使用它來降低項目的耦合。
Dagger2
一句話:一款快速的注解框架,應(yīng)用于Android、Java,由 Google 開發(fā)和維護,是 Square 的 Dagger 項目的分支。
gitHub:https://github.com/google/dagger
Dagger2采用依賴注入方式,依賴注入是一種面向?qū)ο蟮木幊棠J?,它的出現(xiàn)是為了降低耦合性,所謂耦合就是類之間依賴關(guān)系,所謂降低耦合就是降低類和類之間依賴關(guān)系。
依賴關(guān)系
Java的面向?qū)ο缶幊烫匦?,通常會在一個Java對象中引用另一個Java對象,舉例說明一下:
public class ClassA { private ClassB classB; public ClassA(){ classB =new ClassB(); } public void doSomething(){ classB.doSomething(); } }