Android架构分析
layout: post title: “2019-06-24-android架构分析.markdown” date: 2019-06-24 12:11:30 +0800
-
通俗描述 android 架构一般设计为 底层支持+业务模块. 底层支持提供 网络,数据库,Activity的基类,第三方SDK应用等服务 业务模块一般按照App业务,进行横向切分,放入不同的包中进行管理.
-
MVP等架构模式一般是基于页面和背后的逻辑展开的.
-
工厂模式等设计模式一般基于逻辑细节进行描述.
经典问题: 数据穿过很多Activity或Fragment 单例 页面回调逻辑比较多(上传图片/时间选择等UI控件) MVP 数据转化成UI的过程比较复杂(订单详情) MVP 复杂逻辑的模块化(登录/分享) MVP 首页等UI和数据交互比较频繁且复杂的情况 MVVM
MVVM主要是对ViewModel/DataBinding/LiveData的综合使用.
-
android架构一般指围绕着Activity的架构
-
Android架构主要指MVC MVP MVVM
-
MVC是界面和数据进行分离的第一步 V-Activity-C-M
- 当页面间存在通用逻辑时(比如自动登录和手动登录),可以将C转化为P,模式变为MVP P和Activity之间通过接口交互,方便解耦和扩展.
- V和Activity 在新的Android jetpack可以使用MVVM的方式进行交互.ViewModel取代 P或者C进行逻辑控制.主要特点是数据和界面更加耦合,能进行响应式编程.MVVM和MVP可以 在一个Activity中共存.