最近在复习前端的基础,准备把之前薄弱的环境重新打牢。有些概念理解不清楚,模糊的都会记录在博客上面,供以后查阅。最近对感觉自己对前端的MV*框架概念有些模糊,区分不开,所以记录一下。
mvc架构
model(模型) 应用程序中用于处理应用程序数据逻辑的部分。
View(视图) 应用程序中处理数据显示的部分。
Controller(控制器) 应用程序中处理用户交互的部分。
mvc(modal-view-controller)是比较常用的框架,也是早期的后端服务框架,后来随着富客户端的发展,在前端也使用了起来。mvc的目的是把软件分成三个部分,这样关注点分离,便于更好的维护代码,方便进行业务扩展。其各部分的通信如下。

1.View 发送指令到controller
2.controller收到指令后完成业务逻辑,更改model
3. model 将新的数据发送到View,完成视图的显示
特点: 每个层的通信都是单向通信的。
代表框架:backbone
mvp架构
mvp(modal-presenter-view)只是把controller 换成Presenter,并且去掉了modal和 view之前的通信。其逻辑部署在Presenter中

1.View 发送指令到换成presenter
2.presenter收到指令后完成业务逻辑,更改model
3. presenter 返回业务逻辑处理的结果给view
特点: view 和 presenter 双向通信, presenter和model双向通信,并且切断view和model之间的通信
mvvm架构
mvp(modal-mv-view) 其中view和mv双向绑定,其中view 的改变会影响mv,mv 的改变会影响view的显示

特点: view 和 model-view 双向绑定
代表框架:angular