До сих пор я наблюдал несколько потоков для шаблона проектирования MVVM. Не уверены, какие из этих 2 правильные?
предположим, что мы хотим отобразить данные о погоде в табличном представлении.
поток 1: (В этом потоке viewcontroller никогда не будет иметь объекты данных внутри него (недаже для целей отображения в виде таблицы) всякий раз, когда viewcontroller хочет сообщить, он будет взаимодействовать только через viewmodel)
- viewcontroller информирует связанную модель представления для получения данных о погоде.
- API запроса viewmodel для получения погодыdata.
- после получения данных из API, модель представления информировала viewcontroller о полученных данных.
- просмотр перезагрузки контроллера view table.
- tableview ячейка извлекает информацию о погоде из viewmodel, сопоставляяtableview indexpath.
поток 2: (В этом потоке viewcontroller использует / обращается к объектам модели данных для отображения в виде таблицы)
- viewcontroller сообщает связанной модели представления для получения данных о погоде.
- API запроса viewmodel для получения данных о погоде.
- после получения данных из API, view модель информировала viewcontroller о поступлении данных, а также отправила связанные с ними данные.
- просмотреть контроллер, перезагрузить таблицу и отобразить данные о погоде, полученные из viewmodel.