设计Android应用程序架构的基本指南:MVP:第2部分

原文链接:https://blog.mindorks.com/essential-guide-for-designing-your-android-app-architecture-mvp-part-2-b2ac6f3f9637

目前机翻,待修正。

这是本系列文章的第二部分。在第一部分中,我们开发了MVP的概念,并为android应用程序架构制定了蓝图。如果您还没有阅读第一部分,那么下面的大部分内容都没有多大意义。所以,在继续前进之前先完成第一部分。

这是第一部分的链接

我们将基于本系列文章第一部分中描述的蓝图开发一个完整的Android应用程序来实现MVP架构。

MVP项目的GitHub回购

链接

开发此项目是为了提供构建Android应用程序的正确方法。它包含了android应用程序大部分内容所需的所有代码。

该项目最初看起来会非常复杂,但随着您将花时间探索,这对您来说将变得非常明显。该项目使用Dagger2,Rxjava,FastAndroidNetworking和PlaceHolderView构建。

以此项目为案例研究。研究它的每一个代码。如果存在某些错误,或者您可以提出更好的逻辑实现,则创建一个拉取请求。我们正在逐步编写测试,因此可以自由地为它们做出贡献并为它们创建拉取请求。

开发的应用程序的屏幕如下:

这个应用程序有一个登录屏幕和一个主屏幕。登录屏幕实现谷歌,Facebook和服务器登录。google和facebook登录是通过虚拟api实现的。登录基于访问令牌检索,后续api调用受此令牌保护。主屏幕创建带有与MVP相关的问题的抽认卡。此repo包含代码,用于演示任何应用程序的骨架方面的大多数可能的应用程序组件。

我们来看一下项目结构:

整个应用程序分为五个部分:

  1. data:它包含访问和操作组件的所有数据。
  2. di:使用Dagger2提供类的依赖关系。
  3. ui:查看类及其相应的演示者。
  4. 服务:应用程序的服务。
  5. utils:实用程序类。

类的设计方式使其可以继承并最大化代码重用。

项目结构图:

最简单的想法在他们的概念中最为复杂。

有很多有趣的部分。但如果我尝试一次解释所有这些,那么它将一次变成太多的信息。所以,我认为最好的方法是解释核心哲学,然后读者可以通过导航项目回购来理解代码。我建议你参加这个项目研究至少一周。按反向时间顺序研究主要类别。

  1. 研究build.gradle并查找所有使用的依赖项。
  2. 探索数据包和帮助程序类的实现。
  3. ui base包创建Activity,Fragment,SubView和Presenter的基本实现。所有其他相关组件应该从这些类派生。
  4. di package是为应用程序提供类的依赖项。要理解依赖注入,请阅读我发布的两部分文章,Dagger2第1部分Dagger2第2部分
  5. 资源:样式,字体,可绘制。

阅读本系列文章的第3部分:它包括MVP中的Dialogs,ViewPager,RecyclerView和Adapters。

https://blog.mindorks.com/essential-guide-for-designing-your-android-app-architecture-mvp-part-3-dialog-viewpager-and-7bdfab86aabb


如果您的项目非常庞大,许多开发人员同时处理它,那么请使用Interactors和Repositories阅读此MVP架构的扩展:

https://blog.mindorks.com/android-mvp-architecture-extension-with-interactors-and-repositories-bd4b51972339

参考资源:


 

让我们成为朋友的TwitterLinkedInGithub上Facebook的

编码器的摇滚

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值