Этот вопрос является концептуальным, вокруг паттерна MVC в ООП.Вот сюжет: мы находимся в приложении с богатым клиентом, которое работает с веб-сервисом REST.Мы делаем запрос GET к ресурсу на сервере, сервер возвращает ответ в формате XML.Ответ похож на RSS-канал.Клиентскому приложению необходимо проанализировать и отобразить этот XML в удобочитаемом моде.
Я создал объект модели, который в основном отражает таблицу базы данных сервера, у меня также есть парсер и контроллер представления (и, очевидно, представление).
Вот как это работает сегодня.Контроллер представления сообщает парсеру, что нужно начать синтаксический анализ, парсер (тип SAX) читает XML, создает экземпляр объекта модели и загружает детали в его свойства.Каждый раз, когда синтаксический анализатор выполняет с элементом, он уведомляет метод представления через контроллер представления.Он отправляет проанализированный элемент (тип - объект модели) в контроллер представления.Контроллер представления добавляет этот элемент в коллекцию.
Когда синтаксический анализатор завершил синтаксический анализ XML, он уведомляет контроллер представления, затем контроллер представления считывает каждый элемент коллекции и создает представление.
Вот мои вопросы.
- Это хорошая реализация?
- Я думаю, что владелец коллекции должен быть моделью непосредственно, поэтому контроллер представления запрашивает модель для начала анализа, а анализатор вместо этого уведомляет модель.контроллера представления, и, наконец, модель отправляет коллекцию обратно контроллеру представления.Это лучше?
- Должен ли я объединить модель и анализатор?