iOS MVC Design Pattern - слой между моделями ресурсов REST и контроллерами представления

Что вы думаете о добавлении слоя с логикой между моделями и контроллерами представления в шаблоне MVC?

У нас есть модели для ресурсов REST, которые состоят из свойств только для чтения и методов обновления / выборки данных на сервере. Эти модели размещены в каркасе, который используется несколькими приложениями для iOS / OS X, поэтому мы не хотим добавлять к ним какой-либо конкретный код приложения.

Контроллеры представлений обращаются к этим моделям ресурсов REST через слой, на котором размещены часто используемые логики, например, фильтрация и кэширование больших коллекций. Уровень состоит из классов, где каждый класс соответствует ресурсу REST, а каждый экземпляр класса имеет экземпляр модели ресурса REST. Ресурс REST является общедоступным, поэтому ресурс и его значения могут быть прочитаны непосредственно контроллерами представления.

Как должны называться классы в этом слое? Они контролеры, помощники, возможно, утилиты или что-то еще? Или это неправильный шаблон дизайна Какао?

Например, если ресурс называется "Activity", может ли его класс называться "ActivityController"?

1 ответ

Решение

Из моего понимания кажется, что то, что вы используете, обычно говорит обертка на модели ресурсов. Более конкретно, учитывая, что вы размещаете в нем логику фильтрации, возможно, Proxy - правильное имя. Я не думаю, что это неверный шаблон дизайна Какао. Тем не мение

Ресурс REST является общедоступным, поэтому ресурс и его значения могут быть прочитаны непосредственно контроллерами представления.

звучит странно. Ресурс должен быть закрытым, а прокси-сервер должен предоставлять функции для доступа к значениям модели.

Другие вопросы по тегам