本文為大家介紹mvc和mvvm區(qū)別面試(mvc和mvvm區(qū)別面試題),下面和小編一起看看詳細內(nèi)容吧。
在mvc 中,view 可以直接訪問model,因此view 中會包含model 的信息,不可避免地會包含一些業(yè)務邏輯。 mvc模型注重模型的不變性,所以在mvc模型中,模型不依賴于視圖,而視圖依賴于模型。不僅如此,由于部分業(yè)務邏輯是在view中實現(xiàn)的,所以很難改變view,至少那些業(yè)務邏輯不能被復用。
mvvm的核心是“雙向綁定數(shù)據(jù)模型數(shù)據(jù)”,所以view和model之間沒有聯(lián)系,交互是通過viewmodel,mvc是單向通信。也就是說view和model必須有controller支持。 mvc和mvvm的區(qū)別不在于vm完全取代了c,viewmodel的目的是提取controller中顯示的業(yè)務邏輯,而不是取代controller。其他視圖操作服務應該在controller中實現(xiàn),換句話說,mvvm實現(xiàn)了業(yè)務邏輯組件的復用。
數(shù)據(jù)擴展:mvvm模式試圖抓住mvc提供的功能開發(fā)分離的兩大優(yōu)勢,同時利用數(shù)據(jù)綁定的優(yōu)勢,通過綁定數(shù)據(jù)的框架盡可能接近純應用模型。它使用綁定器、視圖模型和業(yè)務層的任何數(shù)據(jù)檢查功能來驗證傳入數(shù)據(jù)。
好了,mvc和mvvm區(qū)別面試(mvc和mvvm區(qū)別面試題)的介紹到這里就結(jié)束了,想知道更多相關資料可以收藏我們的網(wǎng)站。