С MVC, взаимодействия с автономными периферийными устройствами относятся к модели или контроллеру? - PullRequest
2 голосов
/ 21 октября 2008

Использование MVC с шаблоном наблюдателя, если пользовательское действие требует опроса устройства (например, камеры) для данных, должен ли опрос выполняться в контроллере и результат передавался из модели или если запрос был отправлен в Модель и сама Модель выполняет опрос.

Этот вопрос - моя попытка согласовать все, что я читаю, что подчеркивает максиму "тощих контроллеров" с моей интуитивной интуицией о том, что Модель должна действовать только на данные, а не на их получение.

(Примечание: этот вопрос может быть субъективным. Я не совсем уверен, что на этот вопрос есть одно-единственно верный ответ. Если нет, не стесняйтесь повторять, так как я буду очень заинтересован услышать мнения по этому вопросу.)

Ответы [ 3 ]

1 голос
/ 21 октября 2008

Он принадлежит контроллеру. Модель содержит информацию и бизнес-правила, контроллер по сути является интерфейсом для всего, что не является пользователем, информацией или бизнес-правилом, а представление имеет дело с взаимодействием с пользователем.

Можно утверждать, что вид также может управлять этим - модель камеры и драйверы могут быть определены пользователем и, таким образом, попадают под эту область.

Но я бы не ожидал, что модель будет иметь периферийные интерфейсы.

-Adam

1 голос
/ 21 октября 2008

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

1 голос
/ 21 октября 2008

Контроллер должен выполнить опрос. Модель - это моментальный снимок состояния, поэтому состояния камеры должны передаваться из контроллера в модель.

...