mvc mvp mvvm的區別

mvc mvp mvvm的區別

1、MVC:包括視圖、控制器以及模型。視圖傳輸指令到控制器,控制器完成業務邏輯後要求模型改變狀態,模型將新的數據發送給視圖,然後用戶得到反饋,這樣就形成了一個循環過程。

2、MVP:它將控制器修改爲Presenter,視圖與Presenter、Presenter與模型之間是雙向傳輸的,但是模型與視圖之間沒有傳輸,它們兩者通過Presenter進行傳輸。

3、MVVM:它將Presenter修改爲ViewModel,並且ViewModel與視圖之間變成了一種類似的模塊,視圖的變動將會自動映射在ViewModel上,然後與模型之間進行雙向傳輸。

資料拓展:MVC是一種軟件設計典範,用一種業務邏輯、數據、界面顯示分離的方法組織代碼,將業務邏輯聚集到一個部件裏面,在改進和個性化定製界面以及用戶交互的同時,不需要重新編寫業務邏輯。

MVP是從經典的MVC模式中演變而來的,Presenter負責邏輯的處理,Model提供數據,View負責顯示。

MVVM就是將其中的View的狀態和行爲抽象化,讓我們把試圖UI和業務邏輯分開。