MVX (MVC MVP MVVM)

熟悉MVX

MVC / MVP / MVVM

MVC

model view Controller

模型 视图 控制器

模型:用户 - 用户id 用户名 联系方式 …

视图:用户的展示形式

控制器:把数据从数据库中提取出来,供给视图
在这里插入图片描述
是一种业务逻辑、数据、界面展示分离的方法的组织代码,将业务会聚集到一个部件里面,在改进和个性化定制界面及交互的同时,不需要重新编写业务逻辑

  • 例如 express 中 数据库集合(sql - model ) 、 路由 ( controller ) 、 ejs ( view )
  • 优点: 耦合性低,重用性高,生命周期成本低,部署快,可维护性高,有利于软件工程化管理
  • 弊端:由于模型model和视图view要严格的分离,给前端程序带来了很大的困难,每次操作需要彻底的测试 ---- 方向多,问题不好找 - angualrjs — 1系列版本 ---- 2系列以后叫angular

MVP ---- 设想中的一种模式

model view presenter
在这里插入图片描述

  • MVP其实就是MVC架构的一种演变。交互都发生在发布层,view跟model没有关系
  • 各部分之间的通信 都是双向的
  • View 是非常薄的,不部署任何的业务逻辑,---- 被动视图
  • presenter 非常厚,所有的业务逻辑都在此

MVVM

model view viewmodel
在这里插入图片描述

  • 是一种基于MVC的设计,在HTML标签上通过一些指令绑定,就能在Model 和 viewmodel保持不变的情况下,方便UI设计与业务逻辑分离,大大减少了DOM操作
  • model 整个应用所需要的数据模型,含有大量的信息,但并不具备任何的行为逻辑,它只是数据,不会影响浏览器的展示数据
  • view 是具有主动性的,包含了 数据的绑定、事件、行为。会影响到
    model和viewmodel,负责自身的展示行为,并且还要把自身的改变同步到viewmodel。
  • viewmodel 看成是view之后的好帮手,他把view需要的数据暴露给他,并且赋予view一定的行为能力
发布了38 篇原创文章 · 获赞 0 · 访问量 910

猜你喜欢

转载自blog.csdn.net/ZywOo_/article/details/104804655