В типичной многоуровневой архитектуре, как я могу эффективно передавать ошибки, возникающие на уровне доступа к данным, до UIViewContoller
?распространять ошибки в стеке вызовов - цель c
Я следующий дизайн:
UIViewController
с -> datacontroller -> specificserviceproxy -> serviceproxybase
serviceproxybase инициирует вызовы на веб-службы. Я проверяю наличие сети перед вызовом операций в веб-службе и хочу предупредить пользователей в случае сбоя сети.
Какое оптимальное решение? Благодарю.
Хороший план. Приложение: внимательно рассмотрите, какие ошибки стоит представить пользователю, и как вы их представляете. В мобильной среде вы должны ожидать пятнистое подключение, и вашему пользователю не следует отключать оповещение каждые 30 секунд только из-за сбоя вашего автоматического подключения к твитам в фоновом режиме. Сообщить об ошибках ненавязчиво, если вообще, или только в ответ на прямое действие пользователя. – rickster
спасибо за ответы ребята. теперь я запутался в выборе своей реализации. оба варианта кажутся мне логичными. каковы факторы, влияющие на мое решение? – joblot
Мой ответ полезен, когда вам нужна ошибка, обрабатываемая только вызывающим абонентом метода (даже если ошибка распространяется только до предыдущего вызывающего абонента. Ответ с уведомлениями является лучшим выбором, если вам нужно уведомить несколько объектов о данной ошибке, а не только вызывающей стороне метода, который дал ошибку. – rmaddy