理解mvc、mvvm框架概念
mvvm(model-view-viewmodel)即模型-檢視-檢視模型。m:模型,指後端傳遞的資料。v:檢視,指所有看到的頁面。vm:檢視模型,mvvm模式的核心,它是連線view和model的橋梁。它有兩個方向:
mvvm流程圖如下:
一是將【模型】轉化成【檢視】,即將後端傳遞的資料轉化成所看到的頁面。實現的方式是:資料繫結。二是將【檢視】轉化成【模型】,即將所看到的頁面轉化成後端的資料。實現的方式是:dom 事件監聽。這兩個方向都實現的,我們稱之為資料的雙向繫結。總結:在mvvm的框架下檢視和模型是不能直接通訊的。它們通過viewmodel來通訊,viewmodel通常要實現乙個observer觀察者,當資料發生變化,viewmodel能夠監聽到資料的這種變化,然後通知到對應的檢視做自動更新,而當使用者操作檢視,viewmodel也能監聽到檢視的變化,然後通知資料做改動,這實際上就實現了資料的雙向繫結。並且mvvm中的view 和 viewmodel可以互相通訊。
mvc是model-view- controller的簡寫。即模型-檢視-控制器。m和v指的意思和mvvm中的m和v意思一樣。c即controller指的是頁面業務邏輯。使用mvc的目的就是將m和v的**分離。『mvc是單向通訊。也就是view跟model,必須通過controller來承上啟下。mvc和mvvm的區別並不是vm完全取代了c,viewmodel存在目的在於抽離controller中展示的業務邏輯,而不是替代controller,其它檢視操作業務等還是應該放在controller中實現。也就是說mvvm實現的是業務邏輯元件的重用。由於mvc出現的時間比較早,前端並不那麼成熟,很多業務邏輯也是在後端實現,所以前端並沒有真正意義上的mvc模式。而我們今天再次提起mvc,是因為大前端的來到,出現了mvvm模式的框架,我們需要了解一下mvvm這種設計模式是如何一步步演變過來的。
MVC MVVM和傳統三層的理解
其實,每個小小的程式設計師都有個毛病,就是反覆寫乙個東西會覺得這個東西沒有新意。就像讓你寫三層,你卻還是覺得想寫mvc模式。軟體小公司做b s的大部分還是在用三層,大公司可能有自己產品的傳統行業的還是在用這個。這時候你在想,三層這種模式我已經寫膩了,我想寫mvc。三層和mvc不屬於同樣層面的東西,這...
Spring框架中幾個常用概念的理解
控制反 即inversion of control,縮寫為ioc,控制反轉還有乙個名字叫做依賴注入 dependency injection 就是由容器控制程式之間的關係,而非傳統實現中,由程式 直接操控。di dependency injection,即 依賴注入 是元件之間依賴關係由容器在執行期...
開發框架 概念
做為乙個程式設計師,在開發的過程中會發現,有框架同無框架,做起事來是完全不同的概念,關係到開發的效率 程式的健壯 效能 團隊協作 後續功能維護 擴充套件.等方方面面的事情。很多朋友在學習搭建自己的框架,很多公司也在建立或使用自己的框架,網上開源的框架多如牛毛,每年新上線的各種框架也不知多少。而不停的...