项目架构MVC介绍

278 阅读2分钟

这是我参与2022首次更文挑战的第11天,活动详情查看:2022首次更文挑战

不使用架构时

对于我们 Android 开发者来说,常见的架构模式基本上就是 MVC,MVP,MVVM,这三种也是开发 GUI 应用程序常见的模式。架构模式的目的不是为了让应用软件开发出来,而是让结构更清晰,分工更明确,扩展更方便等等。

【缺点】 一个明显的特点就是处理逻辑都集中在了 Activity / Fragment 中,不管是对 View 的操作,还是对数据的处理。带来的问题就是 Activity / Fragment 中逻辑臃肿,后续扩展牵一发而动全身。而且职责划分不清晰,给后续维护也带来了困难。

MVC架构介绍

【项目架构MVC介绍】 MVC 全名是 Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,是一种框架模式。在客户端编程中,我们把代码分为3大模块:

V:View 视图层 掌管界面的呈现 手机用户数据,交给 Controller 继续执行

C:Controller 控制器 接受 View 的参数,根据需求调用业务层执行业务 根据业务层的返回值,调用不同的 view 呈现界面

M:Model 模型层(业务层) 执行业务

【MVC流程】

View 接收到用户的操作 View 将用户的操作,交给 Controller Controller 完成具体的业务逻辑 得到结果封装成 Model,再进行 View 的更新

Controller 是作为一个媒介,处于 Model 和 View 之间。Model 和 View 之间有紧密的联系,耦合性较强

【Android 中的 MVC】

View:XML 布局和自定义 View 等 Controller:Activity 和 Fragment Model:实体类作为 Model 层,一般我们会在项目中创建一个 bean 包放置各种 ModelBean,比如网络请求返回的 UserBean 等

【封层架构的好处】

1、业务层的代码可以复用 2、便于代码的维护,如果 model 层出问题,那么直接去 model 层寻找相关代码即可,不需要管 Activity 3、提高模块的可插拔性

【示例代码】 View:xml 代码不写了,大家都知道 Controller:

Activity{
	doClick(){
		UserModel model = new UserModel();
		model.login();
	}
}

Model:

UserModel{
	public void login(){
	}
}

学习更多:# Android 开发中的架构模式