Как поступающие удаленные данные вписываются в модель MVC

Я прочитал этот вопрос: Понимание шаблона MVC, используемого в приложениях iOS, и загрузил и запустил пример и нашел его полезным чтобы понять, как собирать внешние данные, такие как изображения из Интернета. Я вижу, как IconDowloader работает с ViewController, собирая изображения и возвращая их ViewController через делегата.

Я не понимаю, как IconDownloader (или любой «помощник», извлекающий данные из внешнего источника) вписывается в модель MVC. Мне кажется, что он прикручен сбоку к контроллеру.

Это часть контроллера?


person Ant    schedule 19.07.2012    source источник
comment
Есть модель, представления, контроллеры, но есть и другие роли. Это похоже на ModelUtility!   -  person Ozair Kafray    schedule 19.07.2012


Ответы (3)


IconDownloader является частью иерархии контроллеров, которые вместе образуют «контроллер».

person Ant    schedule 20.07.2012

Да, IconDownloader — это объект контроллера. Обратите внимание, что шаблон MVC говорит о контроллерах в целом, а не только о контроллерах view. Помимо контроллеров представления, может быть еще много объектов контроллеров, которые имеют дело с другими подсистемами приложения.

person Ole Begemann    schedule 19.07.2012
comment
Спасибо за ответ Оле. Для меня недостающей частью было то, что контроллер формируется из иерархии объектов контроллера и что IconDownloader вписывается в это дерево. - person Ant; 20.07.2012
comment
Можете ли вы опубликовать ссылку на это определение MVC? - person Nikolai Ruhe; 20.07.2012
comment
developer.apple .com/library/ios/#featuredarticles/ Контейнерные контроллеры представлений Управление другими контроллерами представлений - person Ant; 26.07.2012

Говоря о MVC в целом, он должен быть частью сервисного уровня, который не является частью теоретического MVC, но в реальном мире всегда есть сервисный уровень (или называемый иначе), но делегированный для обработки ввода-вывода, чтения/записи и т. д.

person Ivor Prebeg    schedule 19.07.2012
comment
Спасибо за ваш ответ. Я вижу, что сервисный уровень является частью архитектуры поставщика сетевых услуг, но меня особенно интересовало, где внешние коммуникации вписываются в MVC. Теперь я понимаю, что это часть контроллера в рамках MVC. - person Ant; 20.07.2012