Skip to content

xiangxiongfly/Android_ArchitectureDesign

Repository files navigation

[TOC]

Android 架构设计

官网文档

https://developer.android.com/jetpack/guide?hl=zh-cn#common-principles

MVC 架构

在这里插入图片描述

MVC 是 Android 默认的设计,主要将代码分为三个部分:

角色 说明
Model(模型) 负责请求数据和处理数据,将处理后的数据发送给 View 和 Controller。
View(视图) 负责界面展示,对应XML布局和View。视图不处理任何业务逻辑,只负责显示数据并接收用户的输入。
Controller(控制器) 负责业务逻辑处理和UI相互,对应Activity和Fragment。控制器是模型和视图之间的协调者。它处理用户在视图上的交互(例如点击按钮),并更新模型以反映这些交互。然后,它更新视图以反映模型的新状态。

代码结构:

在这里插入图片描述

MVP 架构

在这里插入图片描述

角色 说明
Model(模型) 负责请求数据和处理数据,不包含任何UI信息。
View(视图) 负责显示数据和UI交互,通常是Activity和Fragment
Presenter Presenter是Model和View之间的桥梁,负责业务逻辑

代码结构:

在这里插入图片描述

MVP+RxJava+Retrofit

代码结构:

在这里插入图片描述

MVVM 架构

在这里插入图片描述

角色 说明
Model(模型) 负责获取数据和处理数据
View(视图) 负责界面展示和用户交互,即Activity/Fragment
ViewModel(视图模型) ViewModel是Model和View之间的桥梁,负责业务逻辑处理、数据驱动,通常由ViewModel+LiveData。从Model获取数据更新View,处理View的交互,ViewModel不会引用View

代码结构:

在这里插入图片描述

Jetpack MVVM

Jetpack MVVM是 MVVM 模式在 Android 开发中的一个具体实现,是 Android 官方提供并推荐的 MVVM实现方式。

在这里插入图片描述

代码结构:

在这里插入图片描述

MVVM+coroutines+retrofit+flow

代码结构:

在这里插入图片描述

MVVM+coroutines+retrofit+flow+hilt

代码结构:

在这里插入图片描述

About

MVC/MVP/MVVM 系列

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published