最近一直在學(xué)習(xí)安卓項(xiàng)目架構(gòu)方面的知識绰垂,看了很多文章郎逃,接觸到了很多架構(gòu)思想谈撒,例如谷歌官方的MVP+Clean架構(gòu):https://github.com/glomadrian/MvpCleanArchitecture 闰蛔、TMVP架構(gòu):http://www.reibang.com/p/b49958e1889d 悟泵、模塊化組件化http://blog.csdn.net/halibobo1998/article/details/51799915 专钉。今天就說說利用開源框架Router 將項(xiàng)目模塊化組件化挑童。
先來一張圖感受下:
APP組件是殼,并依賴其他的四個(gè)module跃须,同時(shí)我們抽取一個(gè)基礎(chǔ)庫站叼,我們可以將例如網(wǎng)絡(luò)請求,圖片加載菇民,公用的UI尽楔,常用工具類,BaseActivty等等封裝到里面第练,然后所有module都依賴這個(gè)基礎(chǔ)庫阔馋。這是我項(xiàng)目抽取的基礎(chǔ)庫:
當(dāng)項(xiàng)目越來越大,開發(fā)人員越來越多娇掏,組件化開發(fā)的優(yōu)勢就體現(xiàn)出來了呕寝,由于每個(gè)module相互獨(dú)立,協(xié)同開發(fā)時(shí)就非常爽婴梧,每個(gè)模塊可以獨(dú)立開發(fā)下梢,編譯運(yùn)行開發(fā)單個(gè)模塊時(shí)可以共享資源和工具類等等。
但是塞蹭。孽江。。番电。岗屏。。。这刷。
模塊之間怎么通訊呢婉烟?例如我要從A模塊跳轉(zhuǎn)到B模塊,由于模塊相互獨(dú)立崭歧,A中并不能找到B的引用隅很,所以這時(shí)候就用用到Router路由器模式了。
現(xiàn)在簡單介紹下Router :
首先你的gradle要3.3 下載地址http://download.csdn.net/album/detail/2265/1/2
這樣就可以實(shí)現(xiàn)各module之間的通訊了
以上是樓主簡單的應(yīng)用率碾,希望能幫到各位叔营。