【问题标题】:flutter services injection in clean architecture清洁架构中的颤振服务注入
【发布时间】:2021-01-11 06:31:22
【问题描述】:

我是 Flutter 中清洁架构的新手,

我知道我们应该通过用例将我们的存储库注入到像 BLoc 这样的演示者中,但我不知道如何使用像音频服务这样的服务,例如我们应该暂停、恢复、查找和...来自 audioServiceImpl,

是否需要为每个操作(如 play)提供一个用例,或者我们应该将服务直接注入 BLoc 中?

【问题讨论】:

    标签: flutter dart clean-architecture


    【解决方案1】:

    您没有提到您从干净架构中采用的层 以及您需要考虑这种设计的用例,因此它使您的问题基于意见。

    像音频播放器这样的服务是 更多与 UI 相关的东西,它不包含业务逻辑, 正如the clean architecture 中提到的那样,用例层包含特定于应用程序的业务规则。您应该澄清您的播放文件如何涉及业务逻辑。虽然您仍然可以使用 bloc 进行播放器状态管理。

    【讨论】:

    • 我拥有的层是:域(实体、用例)、基础设施(存储库、服务)、外部(数据源、驱动程序)、表示(BLoc、UI)
    • 目前,我已经在基础设施中实现了它,因为它需要对 audioPosition 和 last musics 以及 last index 进行一些持久性来记住它们,所以我认为它具有一些应用程序业务逻辑,对吗?
    • 我认为您可以在表示层中保持播放器独立。在您的播放器块中,通过等效用例发送请求以获取文件的播放状态,然后初始化播放器。当您的集团收到玩家事件时,您可以将更新的播放状态发送到下面的层以保持它。
    猜你喜欢
    • 2022-10-14
    • 2021-02-22
    • 2020-07-07
    • 2019-03-28
    • 2022-01-23
    • 2016-11-30
    • 1970-01-01
    • 2014-06-22
    • 2021-06-17
    相关资源
    最近更新 更多