欢迎来到飞鸟慕鱼博客,开始您的技术之旅!
当前位置: 首页知识笔记正文

MVCMVPMVVM理解 在什么情况下用什么页面架构,什么情况下用whom

墨初 知识笔记 116阅读

1、不用页面架构
优点简单
缺点可读性、可维护性、可扩展性很弱

应用场景欢迎、关于、帮助、隐私条款、用户协议等待

2、mvc
Mmodel 模型包括数据请求及操作
Vxml
CController activity 数据请求后页面逻辑操作
优点将模型进行解耦
缺点1、作为controller的activity里面包含了view的代码角色不清晰静态
2、 动态角度作为包含view的代码的activity的权利很大伴随时间的推移activity代码越来越大

应用场景使用优点简单的数据展示页面设置页面、历史订单

3、mvp
M模型
Vactivity/fragmentxmlView的interface
PPresenter
优点角色清晰
缺点1、新增viewInterface导致增加一个view的功能需要修改三个地方

应用场景复杂多变的页面

4、MVVM 技术依赖 双向的数据绑定的技术-》 dataBinding
M模型
Vactivity/fragmentxml
VMviewModel
优点1、角色清晰没有interface 2、不需要findviewbyId
缺点阅读性差 xml里包含代码

应用场景复杂多变的页面

5、Compose 数据驱动 去掉了xml compose在android上只能用kotlin编写
M模型
Vactivity/fragment composable
VMViewModel
优点布局系统的 Jetpack Compose 实现有两个主要目标一是实现高性能二是让开发者能够轻松编写自定义布局。在 Compose 中通过避免多次测量布局子级可实现高性能。如果需要进行多次测量Compose 具有一个特殊系统即固有特性测量
缺点学习成本
应用场景

详见

标签:
声明:无特别说明,转载请标明本文来源!