Android 干净的体系结构:在域或演示文稿/应用程序中使用CompositeDisposable
我刚刚开始学习并将Android 干净的体系结构:在域或演示文稿/应用程序中使用CompositeDisposable,android,clean-architecture,Android,Clean Architecture,我刚刚开始学习并将cleanshitecture应用到我的Android项目中。 我看到这里有两个很好的来源 1) 2) () 目前,第一个源使用中的CompositeDisposable,第二个源使用中的 据我目前的理解,当我们将CompositeDisposable放在Presenter/ViewModel中时,我看到了好处 易于处理(因为如果我们在UseCase中使用CompositeDisposable,对于每个UseCase我们需要处理调用1次) 可以很容易地组合许多UseCase
cleanshitecture
应用到我的Android项目中。我看到这里有两个很好的来源
1)
2) () 目前,第一个源使用中的
CompositeDisposable
,第二个源使用中的
据我目前的理解,当我们将CompositeDisposable
放在Presenter/ViewModel
中时,我看到了好处
- 易于处理(因为如果我们在
中使用UseCase
,对于每个CompositeDisposable
我们需要处理调用1次)UseCase
- 可以很容易地组合许多
(例如:UseCase
执行,然后使用UseCase1
)UseCase2
CompositeDisposable
放入UseCase
- 它将
与演示分离RX
CleanArchitecture
,我知道当我们采用任何方法时,很难改用另一种方法
对我来说,目前我想我会选择:将CompositeDisposable
放在UseCase
中。
我应该用什么?还有其他方法吗?任何帮助或建议都将不胜感激。说到清洁体系结构,我已经使用了1)Android清洁体系结构大约一年了。如果我是你的话,我会在
Presenter
中处理CompositeDisposable
,因为它与视图的生命周期密切相关,它控制着CompositeDisposable
在这种情况下所属的数据流
建议:
将Android CleanArchitecture从MVP转换为表示层中的MVVM,并在其中处置您的CompositeDisposable
。带有谷歌新ViewModel库的MVVM消除了自己管理生命周期相关对象的麻烦,而此CleanArchitecutre
模板中的MVP无法提供这些麻烦
希望这能把事情弄清楚一点。祝你好运:)非常感谢你的建议。然而,我仍然不知道这一部分
它控制着数据流,在这种情况下,CompositeDisposable属于,我的意思是Presenter
负责触发域事件(交互者/用例),这就是为什么Presenter
也应该是正在清除(处置)的数据流的原因这些事件实例。我说得更清楚了吗?顺便说一句,您不应该担心将RX与表示层分离,因为它不仅可以用于数据请求。更具体地说,您应该在Presenter
中使用UseCase
实例来处理RX,该实例中有CompositeDisposable
。它实际上已经在模板中实现了,谢谢你的解释。我理解得更清楚了。除此之外,我看到如果我们将CompositeDisposable放在Presenter/ViewModel中,代码看起来比放在Usecase中更简单。我认为这可能是一个很好的观点