Модель-View-Controller, здається, допускає два типи змін у перегляді:
- Всякий раз, коли модель змінюється, перегляд отримує повідомлення про зміни, щоб він міг оновити своє візуальне подання відповідно.
- Контролеру надається прямий доступ до API перегляду для цілей "Переглянути вибір".
Що таке «Вибір вибору», і за яких обставин контролер повинен вносити зміни до перегляду, а не переглядати власні зміни, засновані лише на моделі?
Відповіді:
0 для відповіді № 1Ось стаття, яка може виявитися корисною.
Автори представляли потік MVC, в якому відбувався процесМодель надсилає сповіщення контролеру (не View, як традиційним способом). Отже, контролер опосередковує потік даних між моделями та об'єктами перегляду в обох напрямках. Як вони сказали
Така конструкція допомагає більш повністю роз'єднатимодель з виду. У цьому випадку контролер може диктувати властивості моделі, які він очікує знайти в одній або декількох моделях, зареєстрованих контролером. Крім того, він може також надавати методи, які впливають на зміну властивостей моделі для одного або декількох переглядів, зареєстрованих з нею
... що є відповіддю на ваше запитання про те, що таке вибір виду. В основному лише програма має ряд переглядів, які пов'язані або оновлені відповідно до однієї зміни моделі. А контролер вирішить, який набір переглядів потрібно оновлювати та / та співпрацювати, щоб виконати роботу (інформації з одного перегляду недостатньо)
0 для відповіді № 2
Використовується при веб-апликации в MVC немаємеханізм сповіщення про подію, на відміну від MVVM, ваш погляд не повідомляє про перегляд, оскільки він змінюється. Але це дія контролера, який створює і передає модель як частину перегляду.