【问题标题】:Android good architecture [closed]Android良好的架构[关闭]
【发布时间】:2016-08-12 03:51:28
【问题描述】:

我有兴趣探索 Android 应用程序的良好架构模式。

我用 VIPER 和一般的清洁架构方法进行了几次实验,但我想从你们亲爱的 SO 伙伴那里获得一些好的材料/想法来研究。

以下是一些应该反映的要点:

  1. 它应该有助于处理典型的单活动/多片段应用程序中的路由/导航

  2. 应该明确区分哪些组件/层将在后台线程上运行,哪些在主线程上运行,并在层之间进行通信(观察者模式、事件总线或其他)

  3. 它使用有限数量的第三方库,如果使用,请说明利弊(例如 Dagger for Dependency Injection)

  4. 从长远来看,它有助于在适应/扩展应用程序时保持正交性。一个模块的更改应该影响最少数量的组件,而不会产生级联效应,因为组件是大腿耦合的。

  5. 如果能在 github 或其他任何地方查看真实示例/原型,以保持其真实性和实用性,而不会过多地关注学术方面,那就太好了 ;-)

提前感谢任何很酷的想法/模式

【问题讨论】:

  • 这不是一个适合 SO 的问题。来自help center“您应该只根据您所面临的实际问题提出实用、可回答的问题。闲聊、开放式问题会降低我们网站的实用性,并将其他问题推到首页之外......你的问题应该有合理的范围。如果你能想象一本书能回答你的问题,那你就问得太多了。"
  • 一个庞大的话题,检查一些links

标签: java android architecture architectural-patterns


【解决方案1】:

你可以使用 MVP + Repository 模式,我在我的项目中使用它,代码更干净,松散耦合,有很好的分层。您可以将 Dagger 添加到依赖注入,将 RxAndroid 添加到异步任务。

这是我发现并帮助我学习此架构的最佳链接:

http://fernandocejas.com/2014/09/03/architecting-android-the-clean-way/

https://medium.com/android-news/android-architecture-2f12e1c7d4db#.bupsk0o2n

https://medium.com/@artem_zin/m-model-from-mvc-mvp-in-android-flow-and-mortar-bd1e50c45395#.uyij0tjgs

http://fahimk.github.io/2015/04/21/using-rxjava-with-mvp-to-handle-configuration-changes/

https://kmangutov.wordpress.com/2015/03/28/android-mvp-consuming-restful-apis/

https://github.com/sam33rdhakal/MVPandroid/tree/master/app/src/main/java/com/enepalichords/nepalichords

http://magenic.com/Blog/Post/6/An-MVP-Pattern-for-Android

您可以在上面的链接中找到代码,这是我用于学习目的的项目之一:

https://bitbucket.org/emaleavil/cheapshark/

有很多地方需要改进,但我想你能帮助开始吗,这个项目没有完成,我很抱歉。

【讨论】:

  • 是的,我明白了,这个答案就可以了。我不知道这个不允许公开讨论的 SO 规则,谢谢
  • 对不起。我不知道,但不可能在评论中解释所有架构模式。
猜你喜欢
  • 2010-10-23
  • 2018-09-05
  • 1970-01-01
  • 2010-11-22
  • 2011-01-20
  • 1970-01-01
  • 1970-01-01
  • 2011-03-21
  • 2010-09-06
相关资源
最近更新 更多