Дизайн MVC, попытка разделить мой код

#iphone #model-view-controller

#iPhone #модель-вид-контроллер

Вопрос:

Итак, я все еще учусь, и это то, что я сделал. У меня есть класс модели, который взаимодействует с базой данных sqlite. У меня есть ViewController, который показывает всплывающее окно (FilterViewController). Во всплывающем окне есть несколько различных опций, таких как элементы управления сегментами, кнопка для нажатия на TableView и т.д. Все эти параметры предназначены для фильтра, который отфильтровывает то, что отображается пользователю.

В этом классе, на основе выбора пользователя, я обновляю модель. Затем, когда обновления будут выполнены, я отправляю уведомление классу MainViewController, который обрабатывает все остальные представления (панели вкладок, панели поиска, панели навигации и т. Д.). Затем в этом классе он знает, что данные были изменены, и изменяет представление для пользователя с отфильтрованными данными.

Является ли это подходящим дизайном? Интересно, как работает MVC, чтобы разделить представление, контроллер и модель. Но похоже, что в моем FilterViewCtlr я получаю входные данные от пользователя (просмотр) и обновляю модель. Так ли это должно работать? Спасибо!

Ответ №1:

Вот как это должно работать. Задача контроллера состоит в том, чтобы опосредовать взаимодействие представления и модели.