【问题标题】:Should data layer implementations be inside data layer if they depend on platform?如果数据层实现依赖于平台,它们是否应该在数据层内部?
【发布时间】:2021-01-21 14:05:57
【问题描述】:

假设我们有以下图表。 LocalStorage 是否应该在数据层中,即使它取决于平台?我们是否应该有一个名为data-android 的单独模块,例如具有这些类型的实现?

编辑:也许实际上正确的做法是将RepositoryILocalStorage 移动到域层,因为它们只包含业务逻辑。这大概就是这个误会的来源。这样一来,只需执行合约,数据层就可以轻松替换。

【问题讨论】:

    标签: android clean-architecture


    【解决方案1】:

    编辑:也许实际上正确的做法是将 Repository 和 ILocalStorage 移动到域层,因为它们只包含业务逻辑。这大概就是这个误会的来源。这样一来,只需实施合同,数据层就可以轻松替换。

    我完全同意这一点,您 ILocalStorasge 应该退出实现,并且您的存储库只需要知道正在使用 ILocalStorage 并且肯定可以调用接口规范的某些方法。

    使用此逻辑,您可以有多个 LocalStorage 实现,针对不同平台使用不同的技术。

    【讨论】:

      猜你喜欢
      • 2018-08-01
      • 2017-06-10
      • 1970-01-01
      • 1970-01-01
      • 2023-03-20
      • 2014-10-22
      • 1970-01-01
      • 1970-01-01
      • 2020-12-15
      相关资源
      最近更新 更多