MVC MVP MVVM

mvc
模型層(Model) 視圖層(View) 控制層(Controller)
優(yōu)點:模塊分離、代碼清晰,便于維護
mvp
模型層(Model) 視圖層(View) 邏輯處理層(Presenter)
優(yōu)點:解耦,降低模塊之間的依賴。view由Activity承擔,Presenter做業(yè)務(wù),結(jié)構(gòu)清晰。
mvvm
單向綁定上,數(shù)據(jù)的流向是單方面的,只能從代碼流向UI;雙向綁定的數(shù)據(jù)流向是雙向的,當業(yè)務(wù)代碼中的數(shù)據(jù)改變時,UI上的數(shù)據(jù)能夠得到刷新;當用戶通過UI交互編輯了數(shù)據(jù)時,數(shù)據(jù)的變化也能自動的更新到業(yè)務(wù)代碼中的數(shù)據(jù)上。對于雙向綁定,剛好可以使用DataBinding,DataBinding是一個實現(xiàn)數(shù)據(jù)和UI綁定的框架,是構(gòu)建MVVM模式的一個關(guān)鍵的工具。所以Android中實現(xiàn)MVVM就方便多了。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

推薦閱讀更多精彩內(nèi)容