一.MVC:Model - View - Controller
特点:各部分循环传递
流程: 首先控制器接收用户的请求,并决定应该调用哪个模型来进行处理,然后模型用业务逻辑来处理用户的请求并返回数据,最后控制器用相应的视图格式化模型返回的数据,并通过表示层呈现给用户。
二.MVP:Model -View -Presenter
特点:各部分的通讯是互相传递的
view和model不发生联系,通过presenter传递
view很薄没有任何业务逻辑,业务逻辑都在presenter所以很厚重
presenter接收到用户请求后完成业务逻辑后,操作Model执行相应的操作
Model将数据送给presenter,presenter更新View,用户得到反馈
推荐:
三.MVVM:Model-View-ViewModel
特点:MVVM模式将Presenter改名为viewmodel,基本上与MVP模式完全一致
区别是,它采用双向绑定(data-binding),view的变动,自动反映在viewmodel,反之亦然。
viewmodel操作Model发生数据改变
Model通过事件将改变的数据发送给viewmodel
viewmodel通知view渲染页面