前端的开发模式从经典的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调试。详细内容请参考: