В VIPER, в отличие от MVC, роль и место, не столь четко определенные для NSFetchedResultsController.Какая это место для NSFetchedResultsController в архитектуре VIPER?
Можно ли разместить его на интеракторе?
В VIPER, в отличие от MVC, роль и место, не столь четко определенные для NSFetchedResultsController.Какая это место для NSFetchedResultsController в архитектуре VIPER?
Можно ли разместить его на интеракторе?
В соответствии с this article интерактор не должен знать, как сохранить объекты.
VIPER и архитектура, использующая NSFetchResultController, представляют собой разные подходы. Неправильное место для NSFetchResultController в VIPER.
VIPER хорош для большого применения, поскольку он обеспечивает уровни архитектуры, которые хорошо изолированы.
NSFetchResultController подходит для небольших приложений, так как он помогает быстрее развиваться.
NSFetchedResultsController - это специфический для Core Data способ отслеживания изменений базы данных. Это популярный шаблон для использования и может быть найден в большинстве мобильных систем баз данных.
Возможно использовать этот вид наблюдения под уровнем абстракции базы данных, поэтому, если мы возьмем полную архитектуру VIPER мобильного приложения, она может быть реализована под Interactor. В соответствии с принятым ответом его не следует вводить в Interactor, потому что Interactor не должен знать о типе используемой локальной базы данных. Хотя я не могу придумать ничего против использования его на уровне базы данных.