Итак, я прочитал об архитектуре VIPER и мне стало интересно, как бы вы реализовали комбинацию основных и подробных представлений, используя предлагаемое разделение уровней между представлением, моделью представления, презентатором и маршрутизацией контроллера представления?
Допустим, я хочу отобразить некоторые контакты. У меня есть ContactsListViewModel
с его именем свойств, фотографией и, возможно, некоторым подробным текстом. Это известно ContactsListPresenter
и ContactsListViewController
.
Теперь я выбираю контакт в своем табличном представлении, контроллер представления сообщает об этом ведущему, а ведущий сообщает каркасу показать подробное представление для... чего?
Модель представления, известная модулю «Список», не содержит достаточно информации для подробного отображения (например, дополнительные примечания, список вызовов и т. д.).
В этом случае должна ли быть модель представления, которую можно использовать как для списка, так и для подробного представления? Будет ли это нарушением разделения ответственности?