当前位置: 首页 > backend >正文

MVC、MVP、MVVM三大架构区别

1、MVC架构

M(Model):主要处理数据的存储、获取、解析。

V(View):即Fragement、Activity、View等XML文件

C(Controller):主要功能为控制View层数据的显示,通常与写在Activity类、Fragment类、View类中,通过接口与Modle层进行通信,并将数据显示到View上。

(1)优点
实现了View层和Model层的分离,一个View可以连接多个Modle,一定程度上实现Modle的复用,且修改View层的代码不影响Modle层的。
(2)缺点
MVC架构的Controller层的与Activity、Fragment、View等类写在一起,一旦代码逻辑复杂则会导致Activity、Fragment类臃肿冗余,难以维护。

2、MVP架构

M(Model):主要处理数据的存储、获取、解析。

V(视图):负责显示数据和接收用户输入。

P(表示器):模型和视图之间的中间层

http://www.xdnf.cn/news/3993.html

相关文章:

  • HTML05:超链接标签及应用
  • C++笔记之反射、Qt中的反射系统、虚幻引擎中的反射系统
  • 利用jQuery 实现多选标签下拉框,提升表单交互体验
  • 动态指令参数:根据组件状态调整指令行为
  • AI Agent开发第50课-机器学习的基础-线性回归如何应用在商业场景中
  • 软考 系统架构设计师系列知识点 —— 黑盒测试与白盒测试(1)
  • GStreamer开发笔记(三):测试gstreamer/v4l2+sdl2/v4l2+QtOpengl打摄像头延迟和内存
  • 电赛经验分享——模块篇
  • android-ndk开发(4): linux开发机有线连接android设备
  • 命令模式(Command Pattern)
  • [USACO1.1] 坏掉的项链 Broken Necklace Java
  • C++ -- 内存管理
  • 探寻适用工具:AI+3D 平台与工具的关键能力及选型考量 (AI+3D 产品经理笔记 S2E03)
  • Java面试:微服务与大数据场景下的技术挑战
  • 《MATLAB实战训练营:从入门到工业级应用》高阶挑战篇-《5G通信速成:MATLAB毫米波信道建模仿真指南》
  • MySQL JOIN详解:掌握数据关联的核心技能
  • 【翻译、转载】【译文】模型上下文协议(Model Context Protocol, MCP)简介
  • java技术总监简历模板
  • Q_OBJECT宏的作用
  • 3.9/Q2,Charls最新文章解读
  • 基于 AI 的人像修复与编辑技术:CompleteMe 系统的研究与应用
  • 网络编程,使用select()进行简单服务端与客户端通信
  • 56、【OS】【Nuttx】编码规范解读(四)
  • NV214NV217美光闪存固态NV218NV225
  • Jasper and Stella: distillation of SOTA embedding models
  • P1802 5 倍经验日
  • 【AI提示词】 复利效应教育专家
  • Python实例题:Python获取NBA数据
  • 大连理工大学选修课——图形学:第三四章 基本图形生成算法
  • 低速总线:IIC和SMBUS