前言
- 在
Android
开发中,当你梳理完需求后,你要做的并不是马上写下你的第一行代码,而是需先设计好整个项目的技术框架 - 今天,我将全面介绍
Android
开发中主流的技术框架MVC
、MVP
与MVVM
模式,并实例讲解MVP
模式,希望您们会喜欢。
目录
1. 为什么要进行技术框架的设计
- 模块化功能
使得程序模块化,即:内部的高聚合、模块之间的低耦合 - 提高开发效率
开发人员只需专注于某一点(视图显示、业务逻辑 / 数据处理) - 提高测试效率
方便后续的测试 & 定位问题
切记:不要为了设计而设计,否则反而会提高开发量
2. Android开发主流的技术框架
- 主要有
MVC
、MVP
、MVVM
3种模式 - 下面,我将详细 & 具体的介绍上述3种模式
2.1 MVC模式
- 角色说明
示意图
- 模式说明
示意图
- 该模式存在的问题:Activity责任不明、十分臃肿
Activity
由于其生命周期的功能,除了担任View
层的部分职责(加载应用的布局、接受用户操作),还要承担Controller
层的职责(业务逻辑的处理)
随着界面的增多 & 逻辑复杂度提高,Activity
类的代码量不断增加,越加臃肿
2.2 MVP模式
-
出现的原因
为了解决上述MVC
模式存在的问题,把分离Activity
中的View
层 和Controller
层的职责,从而对Activity代码量进行优化、瘦身,所以出现了MVP
模式 -
角色说明
示意图
- 模式说明
示意图
- 优点:(对比MVC模式)
- 耦合度更低:通过
Presenter
实现数据和视图之间的交互,完全隔离了View层与Mode层,二者互不干涉
避免了
View
、Model
的直接联系,又通过Presenter