Форум программистов, компьютерный форум, киберфорум
Наши страницы

Программирование iOS/iPhone

Войти
Регистрация
Восстановить пароль
 
Ivanesik
1 / 1 / 0
Регистрация: 20.11.2015
Сообщений: 11
#1

Архитекутра - Программирование iOS

08.02.2018, 16:55. Просмотров 301. Ответов 1
Метки нет (Все метки)

Реализую проект клиентского приложения и возникла заморочка с архитектурой.
До этого были простые 3-4 оконные приложения. Впервые дали проект сложнее

Пытаюсь построить такую логику:
Общение приложения с сервером происходит на основе сервиса реализующего сокетное взаимодействия (NSStream) этот сервис пишет различные данные в локальную базу (Core data). И вот задача, при выводе определенной экранной формы на нее вывелись данные из БД, но если пришли новые данные, то надо передать их в этот контроллер для их вывода, либо перезапросить данные из БД, куда они были записаны.

Заморочка в том как дать понять контроллеру что пришедшие данные относятся именно к нему и отдать ему их если он представлен пользователю?
И стоит ли создавать сингтон сервиса, либо иницировать его в каждой экраной форме и закрывать при переходах, чтобы задавать ему делегат потоков (NSStream) и отрабатывать там данные

Думаю банальные вопросы, но не нашел на них ответа, а строить плохую архитектуру с самого начала прям не тянет
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
ExFau$t
504 / 459 / 98
Регистрация: 08.05.2012
Сообщений: 2,302
08.02.2018, 23:41 #2
Погугли вот эту штуку NotificationCenter. Суть в том, что когда пришли данные для 2го, допустим, контроллера, мы post'им это событие по некоему текстовому тегу, а в конроллерах висят обработки этих событий, каждый со своим тегом. Таким образом, данные можно обновить, в любом нужном конроллере, независимо от того, запущен он или свёрнут.
1
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru