客户端应用架构模式

文章目录

客户端应用架构模式

MVC

视图层:在MVC架构中, Android的xml布局文件和Activity/Fragment文件被划分为View视图层。 因为xml作为视图层功能太弱,只能够实现页面的布局,不能够实现页面数据和事件的处理。需要和Activity一起才能够构成一个完整的视图层。

业务层:大多数的MVC架构开发的安卓项目, 并没有把Controller业务层独立出来,而是将业务层也在Activity/Fragment中实现。这导致了Activity/Fragment的代码非常臃肿,这就是MVC的缺点之一。

数据层:数据层Model指的是,数据管理模块,这包括了数据的获取,处理。存储等。 MVP、MVVM的架构中的Model也是一样。

MVP

MVP架构是基于MVC的改进,将MVC的中Controller独立出来作为Presenter。 xml和Activity还是作为视图层, 视图层接收到页面数据,调用Presenter进行业务逻辑处理,Presenter调用Model进行数据处理,Model回传数据给Presenter,Presenter回传数据给View。数据的回传通过接口回调的方式来实现。

MVVM

MVVM在MVP的基础上加入了双向绑定,使View能够感知ViewModel中的数据变化,ViewModel能够感知View数据的变化。

相关推荐
愤怒火龙果1 小时前
AI 渗透测试智能体架构综述:从单兵到蜂群的演进图谱
人工智能·网络安全·架构
Oiiouui1 小时前
Godot-GridGame架构逻辑层与实体/物品层篇
架构·游戏引擎·godot
独隅2 小时前
Claude 高效应用实战指南
android·java·开发语言·claude·claude code
硅基手札2 小时前
Android 系统全景专栏 00 · 总目录
android·操作系统·嵌入式开发
涛声依旧-底层原理研究所2 小时前
Agent 沙箱实现原理:拆解 DeepSeek Harness 的三层沙箱架构与三平台后端
人工智能·架构
tianyuanwo2 小时前
Prometheus 服务部署指南:从架构原理到生产级落地
架构·prometheus
YB13752 小时前
Jetpack Compose 动画Crossfade
android
尤水就下2 小时前
🔥说一说在线文档的 Block 架构是如何实现的
前端·javascript·架构
代码方舟2 小时前
零信任架构实战:基于天远企业二要素验证构建自动化小微快贷法人资质核验网关
运维·人工智能·架构·自动化