Android架构|Android架构 - MVC与MVP
一. MVC 【Android架构|Android架构 - MVC与MVP】在Android的开发过程中,每个层对应如下:
Model层:对应Java Bean、数据库和网络请求等;
View层:对应xml布局、自定义View或ViewGroup;
Controller层:对应Activity、Fragment;
文章图片
优点
Controller层起到桥梁作用,在View层和Model层之间通信,使得View层和Modle层分离解耦;
缺点
随着功能的不断迭代与越来越复杂的交互处理,Controller 层也就是 Activity、Fragment 中的代码越来越多,变得很臃肿,难以维护
一. MVP Model层: 对应Java Bean、数据库和网络请求等;
View层: 处理数据展示,用户的交互。对应Activity、Fragment;
Presenter层: 是Model层和View层的桥梁,从Model层中获取数据,展示在View层;
文章图片
优点 Presenter层负者完成Model层和View层的交互,让Model层和View层完全解耦,代码结构清晰,方便测试。
缺点 每个 View 都有 Presenter ,跟其对应的接口,类的数量会明显变多
两者区别 MVC:允许Model和View进行交互
MVP:Model和View进行交互交由Presenter完成,简化了Activity中的代码,将复杂业务逻辑提取到了Presenter中处理,降低了耦合度。方便测试。
推荐阅读
- android第三方框架(五)ButterKnife
- Android中的AES加密-下
- 带有Hilt的Android上的依赖注入
- android|android studio中ndk的使用
- Android事件传递源码分析
- RxJava|RxJava 在Android项目中的使用(一)
- Android7.0|Android7.0 第三方应用无法访问私有库
- 深入理解|深入理解 Android 9.0 Crash 机制(二)
- android防止连续点击的简单实现(kotlin)
- Android|Android install 多个设备时指定设备