前端的开发模式从经典的MVC框架,到完全独立出来controller层的MVP,再到以vue、angular、react引领的的MVVM框架。

M指的是model(业务逻辑、接口数据层),V指的是view(用户可视页面层),C、P、VM指的是controller(用户界面和后台接口之间的控制层,主要作用是预处理用户输入,应用逻辑处理)

MVC模式
由施乐公司,于上个世纪70年代提出,数据处理逻辑如下:图片描述

model层处理完信息,直接与view层通信。

优点:实现了前后端解耦、分离。
缺点:view层的分离不够彻底,组件化困难。

MVP模式
由IBM子公司,于上世纪90年代提出,数据处理逻辑如下:
图片描述

完全借由P(presenter)中间层处理逻辑,但与view的通信需要手动同步。

优点:实现了view层的分离,独立,由中间层统一逻辑处理。
缺点:中间层与view层的通信不够自动、同步。

MVVM模式
由微软公司,于2005年提出,数据处理逻辑如下:
图片描述

实现了控制层与view的自动同步。
优点:实现了自动同步中间层与view的通信。
缺点:不适用简单项目,数据绑定在view模板中,不能debug调试。

详细内容请参考:https://segmentfault.com/a/11...


Fardwn
121 声望2 粉丝

专注技术!