MVP+Dagger2+Retrofit实现更清晰的架构

本文介绍了如何结合MVP、Dagger2和Retrofit实现一个清晰的Android应用架构。Dagger2用于依赖注入,简化了MVP中View、Presenter和Model之间的依赖关系;Retrofit则负责处理RESTful API数据获取。虽然Dagger2的理解有一定难度,但通过实践和学习资源,可以创建出易于维护和扩展的项目结构。文中还展示了App和MainActivity的Component设计,并提及了代码将上传至GitHub。
摘要由CSDN通过智能技术生成

这个架构已经有不少文章介绍了,今天打算自己实践下。

MVP概念不多说了 相关介绍已经很多了

Dagger2:依赖注入框架,用来解决依赖 除了基本依赖 mvp的V–>P–>M的之间依赖也轻松解决 方便不少

Retrofit:用来解决M的RestApi数据获取, 天然支持Rxjava 不过这里我没用到Rxjava 其自带的Callback已经足够用了

估计这个架构的难点在于Dagger2 理解它的工作方式需要方式需要点时间,我收集了一些资料,可以查看我博客的相关文章。

ok,开始写demo,简单看下项目结构

项目结构

  • data:数据来源 也就是MVP的M
  • model:实体bean,本来也应该放在data中,为了方便查找就抽出了,毕竟很多地方用到
  • ui:视图,V和P都在里面,View层是最难组织的,有人喜欢以功能划分 eg:main,login 有人喜欢以组件划分

完整项目结构

来简单看一下dagger2提供的依赖结构

dagger依赖结构

AppComponent通常提供全局的对象以便于其他的组件依赖使用,比如context,rest api接口等,这些都是全局的单例对象

MainActivityComponent特意针对MainActivity,所以它只提

  • 12
    点赞
  • 81
    收藏
    觉得还不错? 一键收藏
  • 17
    评论
评论 17
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值