在VIPER中,与 MVC 不同,NSFetchedResultsController 的角色和位置没有那么明确定义。
把它放在交互器上是否正确?
在VIPER中,与 MVC 不同,NSFetchedResultsController 的角色和位置没有那么明确定义。
把它放在交互器上是否正确?
根据这篇文章,交互者不应该知道如何持久化实体。
VIPER 和使用 NSFetchResultController 的架构是不同的方法。VIPER 中没有 NSFetchResultController 的合适位置。
VIPER 非常适合大型应用程序,因为它提供了隔离良好的架构层。
NSFetchResultController 适用于较小的应用程序,因为它有助于更快地开发。
NSFetchedResultsController 是一种用于观察数据库变化的 Core Data 特定方法。这是一种流行的模式,可以在大多数移动数据库系统中找到。
可以在数据库抽象层下使用这种观察,因此如果我们采用移动应用程序的完整 VIPER 架构,它可以在交互器下实现。根据接受的答案,它不应该被放入交互器中,因为交互器不应该知道它正在使用的本地数据库的类型。虽然我想不出任何反对在数据库级别使用它的方法。