gpt4 book ai didi

android - 整洁架构 : Use CompositeDisposable in domain or presentation/app

转载 作者:行者123 更新时间:2023-11-29 18:46:40 26 4
gpt4 key购买 nike

我刚刚开始为我的 Android 项目学习和应用 CleanArchitecture
我看到这里有 2 个很好的来源
1) https://github.com/android10/Android-CleanArchitecture
2) https://github.com/fiveagency/Reedly (https://five.agency/android-architecture-part-4-applying-clean-architecture-on-android-hands-on/)

目前,第一个来源使用 CompositeDisposabledomain (inside UseCase)和第二个源使用在presentation/app(Presenter/ViewModel)

据我目前的理解,当我们将 CompositeDisposable 放入 Presenter/ViewModel 时,我看到了好处。

  • 易于处置(因为如果我们在 UseCase 中使用 CompositeDisposable,对于每个 UseCase 我们需要处置调用 1 次)
  • 可以很容易地组合许多UseCase(例如:UseCase1 执行然后flatMap/zip...与UseCase2)

当我们将 CompositeDisposable 放入 UseCase 时,我看到了好处

  • 它将RX与呈现分开

我不知道 2 方法是否还有其他优点/缺点。我从不在实际项目中使用 CleanArchitecture,而且我知道当我们采用任何方法时,很难更改为另一种方法。

对于我来说,目前我想我会选择:将CompositeDisposable放在UseCase中。我应该使用什么?还有其他方法吗?
任何帮助或建议将不胜感激。

最佳答案

谈到整洁的架构,我已经使用 1) Android-CleanArchitecture 大约一年了。当涉及到释放 CompositeDisposable 时,如果我是你,我会在 Presenter 中进行,因为它与 View 的生命周期密切相关并且它控制着数据流CompositeDisposable 在这种情况下属于。

建议:

1) Android-CleanArchitecture表示层中从 MVP 转换为 MVVM ViewModels并将你的 CompositeDisposable 放在那里。带有 Google 新 ViewModel 库的 MVVM 消除了您自己管理生命周期相关对象的麻烦,而此 CleanArchitecutre 模板中的 MVP 无法提供这一点。


希望这能让事情变得更清楚一些。祝你好运:)

关于android - 整洁架构 : Use CompositeDisposable in domain or presentation/app,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51630508/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com