【问题标题】:Android. What does the domain layer include?安卓。领域层包括什么?
【发布时间】:2021-05-20 18:21:39
【问题描述】:

我想创建一个具有清晰架构规则的项目。在表示层中,我将有一个视图模型。研究视图模型,我了解到:

“ViewModel 类的目的是为 UI 包含数据 控制器,以便该数据在配置更改后仍然存在。 加载、持久化和管理数据是复杂的功能, 超出了 ViewModel 传统功能的范围。”

因此,我需要一个包含业务逻辑的领域层。根据我研究的资料,领域层包括:用例、领域模型和存储库接口。但是,我不太了解域层的用途。目前,在我在用例中找到的示例的所有项目中,只有一次请求执行。

但是,我不明白这些操作应该放在哪里,比如对从服务器接收到的数据进行排序、对数据执行任何算术运算、执行任何复杂的逻辑作为与用户界面交互的结果。

我不明白哪些逻辑可以保留在视图模型中,哪些需要转移到领域层。而如果把逻辑转移到领域层,应该在哪里执行,在用例中呢?

请帮助我理解这一点。我阅读了很多资料,但没有找到任何可以帮助我发现领域层所有可能性的项目。

【问题讨论】:

标签: android android-viewmodel use-case business-logic clean-architecture


【解决方案1】:

理解差异的一种方式是领域层不应该包含任何与android相关的逻辑,即它应该是纯java,只是可以从应用程序中取出并在任何其他平台上执行的干净的业务逻辑,例如在 Web 应用程序中。另一方面,Viewmodel 知道所有 android 平台功能来帮助您的 UI 需求。您的活动、片段...等应该依赖 Viewmodel 来显示他们需要的任何内容。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-02-15
    • 1970-01-01
    • 2019-03-03
    • 1970-01-01
    • 1970-01-01
    • 2014-07-22
    • 2010-12-24
    相关资源
    最近更新 更多