一個(gè) MVVM 設(shè)計(jì)模式的新聞客戶端 Demo 程序
使用 Kotlin 編寫
本意是想了解和學(xué)習(xí) MVVM 設(shè)計(jì)模式
使用的類庫如下:Gson , Glide , Okhttp , RxJava , Retrofit
使用 Jetpack 組件,F(xiàn)ragment 之間切換使用 Navigation
網(wǎng)絡(luò)數(shù)據(jù)大約 10分鐘更新一次
支持上拉加載以及 下拉 刷新(暫時(shí)沒有加載和刷新動(dòng)畫或提示,未使用 RecyclerView 類庫,需要自行實(shí)現(xiàn))
頁面展示:

1

2
other
貼一篇關(guān)于 MVVM 設(shè)計(jì)模式的鏈接
7.3 MVVM 架構(gòu)模式的優(yōu)缺點(diǎn)
優(yōu)點(diǎn):
結(jié)構(gòu)清晰,職責(zé)劃分清晰
模塊間充分解耦
在 MVP 的基礎(chǔ)上,MVVM 把 View 和 ViewModel 也進(jìn)行了解耦
缺點(diǎn):
Debug 困難,由于 View 和 ViewModel 解耦,導(dǎo)致 Debug 時(shí)難以一眼看出 View 的事件傳遞
代碼復(fù)雜性增大
從 Demo 中,可以明確感受到 代碼復(fù)雜性大過普通開發(fā)