NSFetchedResultsController 在 VIPER 架构中的哪个位置?

Which it is the place for NSFetchedResultsController in VIPER architecture?

VIPER中,与MVC不同,NSFetchedResultsController的作用和位置没有明确定义。

放在交互器上合适吗?

根据 this article 交互者应该不知道如何持久化实体。

VIPER 和使用 NSFetchResultController 的架构是不同的方法。 NSFetchResultController 在 VIPER 中没有合适的位置。

VIPER 适用于大型应用程序,因为它提供隔离良好的架构层。

NSFetchResultController 适用于较小的应用程序,因为它有助于加快开发速度。

NSFetchedResultsController 是一种用于观察数据库更改的 Core Data 特定方法。这是一种流行的模式,可以在大多数移动数据库系统中找到。

可以在数据库抽象层下使用这种观察,因此如果我们采用移动应用程序的完整 VIPER 架构,它可以在交互器下实现。根据公认的答案,它不应该放入交互器中,因为交互器不应该知道它正在使用的本地数据库的类型。虽然我想不出任何反对在数据库级别使用它的东西。