前端的开发模式从经典的MVC框架,到彻底独立出来controller层的MVP,再到以vue、angular、react引领的的MVVM框架。前端
M指的是model(业务逻辑、接口数据层),V指的是view(用户可视页面层),C、P、VM指的是controller(用户界面和后台接口之间的控制层,主要做用是预处理用户输入,应用逻辑处理)vue
MVC模式
由施乐公司,于上个世纪70年代提出,数据处理逻辑以下:react
model层处理完信息,直接与view层通讯。segmentfault
优势:实现了先后端解耦、分离。
缺点:view层的分离不够完全,组件化困难。后端
MVP模式
由IBM子公司,于上世纪90年代提出,数据处理逻辑以下:框架
彻底借由P(presenter)中间层处理逻辑,但与view的通讯须要手动同步。组件化
优势:实现了view层的分离,独立,由中间层统一逻辑处理。
缺点:中间层与view层的通讯不够自动、同步。spa
MVVM模式
由微软公司,于2005年提出,数据处理逻辑以下:debug
实现了控制层与view的自动同步。
优势:实现了自动同步中间层与view的通讯。
缺点:不适用简单项目,数据绑定在view模板中,不能debug调试。调试
详细内容请参考:https://segmentfault.com/a/11...