先設(shè)計項目的技術(shù)框架,再寫第一行代碼。
引言
- 模塊功能化(高內(nèi)聚、低耦合)
- 提高開發(fā)效率(分工明確、業(yè)務(wù)聚焦)
- 提高測試效率(方便測試、問題定位)
MVC

MVP

MVVM

總結(jié)
設(shè)計初衷
- MVC:為解決程序模塊化問題。將業(yè)務(wù)邏輯、數(shù)據(jù)處理與界面顯示進行分離來組織代碼,即分成M、V、C層
- MVP:MVC中的M、V層還是有相互交叉、隔離度不夠,同時寫到Activity上使得Activity代碼臃腫。MVP隔離了MVC中的 M 與 V 的直接聯(lián)系,將M、V層更加隔離開來,并釋放了Activity的壓力
- MVVM:為了更加分離M、V層,更加釋放Activity的壓力。使得V和M層之間的耦合程度進一步降低,分離更為徹底,同時更加減輕了Activity的壓力。
宏觀概覽
- MVC:學(xué)習(xí)簡單但是解耦不夠徹底
- MVP:解耦更加徹底,學(xué)習(xí)起來也相對比較簡單,但是代碼相對比較繁瑣
- MVVM:代碼邏輯非常簡潔,但是學(xué)習(xí)成本較大
?
小編的博客系列
優(yōu)秀博客推薦
MVC、MVP、MVVM的區(qū)別和聯(lián)系(精講版)
MVC、MVP、MVVM,我到底該怎么選?
這是一份全面 & 清晰的架構(gòu)設(shè)計指南:MVC、MVP & MVVM模式(含實例講解)