1

Довольно широкий quesiton, я знаю.Сетевое программирование внутри контроллера просмотра ... плохая практика?

Неправильная практика сохранения сети в контроллере просмотра вне модели? Или это будет предпочтительнее в модели? Например. в настоящее время есть ViewController, где я получаю данные JSON через. URL-запрос, проанализировать его и представить его в представлении.

Я использую данные результата JSON как атрибуты в объекте моей модели данных. Плохая практика?

Я сейчас работаю с iOS прямо сейчас, но для меня все в порядке, я просто пытаюсь понять.

ответ

3

Предположим, что ваша модель означает объект данных, я думаю, что сетевой код должен быть отделен от обоих ViewController и Model, если это возможно, то есть: заключить его в отдельный класс NetworkHelper и позволить ViewController использовать NetworkHelper для заполнения модели (объект данных).

Позволяет тестировать сетевой код по отдельности. Также вы можете легко заменить источник данных (например, использовать данные жесткого кода вместо загрузки), заменив NetworkHelper.

Это отношения зависимости, которая может выглядеть следующим образом:

NetworkHelper--UIViewController 
      \ / | 
      Model UIView 
+0

Спасибо, очень интересно. Я об этом не думал. Я думаю, что это нормально, если он имеет значение для проекта. – Rasmus