001 mvc
- 視圖(View):用戶界面貌笨。
- 控制器(Controller):業(yè)務(wù)邏輯
- 模型(Model):數(shù)據(jù)保存
各部分之間的通信方式如下咳促。
- View 傳送指令到 Controller
- Controller 完成業(yè)務(wù)邏輯后稚新,要求 Model 改變狀態(tài)
- Model 將新的數(shù)據(jù)發(fā)送到 View,用戶得到反饋
所有通信都是單向的跪腹。
互動(dòng)方式
1.接受用戶指令時(shí)褂删,MVC 可以分成兩種方式。一種是通過 View 接受指令冲茸,傳遞給 Controller屯阀。
2.另一種是直接通過controller接受指令。
3.實(shí)際項(xiàng)目可以更為靈活
用戶可以向view 發(fā)送指令轴术,再由view 直接要求model 改變狀態(tài)难衰;
也可以直接向controller 發(fā)送指令,再由controller 發(fā)送給view .
controller 非常薄逗栽,只起到路由的作用盖袭,而view 非常厚,業(yè)務(wù)邏輯部署在view.
002 MVVM
采用雙向綁定(data-binding):View的變動(dòng)彼宠,自動(dòng)反映在 ViewModel鳄虱,反之亦然。
參考博客:http://www.ruanyifeng.com/blog/2015/02/mvcmvp_mvvm.html