|
Шаблон MVP
|
|||
---|---|---|---|
#18+
Здравствуйте. Разбираясь с шаблоном тут, мне не понятно как обработать в View, исключение которое произошло в модели. Это мне нужно, определить event и подписаться на него в View, тогда зачем Presenter? Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15.
... |
|||
:
Нравится:
Не нравится:
|
|||
20.12.2010, 11:56 |
|
Шаблон MVP
|
|||
---|---|---|---|
#18+
Зададим вопрос по другому. Какой вид Presenterа и модели, если инициатором события выступает модель. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.12.2010, 13:17 |
|
Шаблон MVP
|
|||
---|---|---|---|
#18+
А если у вас несколько View? Вообще, вариант, когда View подписывается на события от модели - это вариант MVC ... |
|||
:
Нравится:
Не нравится:
|
|||
20.12.2010, 15:07 |
|
Шаблон MVP
|
|||
---|---|---|---|
#18+
=NIk=Зададим вопрос по другому. Какой вид Presenterа и модели, если инициатором события выступает модель. Конкретно в том рассматриваемом примере Presenter просто переадресует события View-шкам ... |
|||
:
Нравится:
Не нравится:
|
|||
20.12.2010, 15:11 |
|
Шаблон MVP
|
|||
---|---|---|---|
#18+
Arm79А если у вас несколько View? Вообще, вариант, когда View подписывается на события от модели - это вариант MVC Значит, если модель будет общаться с View, это не критично? Тогда, Я еще раз спрошу, зачем Presenter, если можно сделать модель - вью. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.12.2010, 16:13 |
|
Шаблон MVP
|
|||
---|---|---|---|
#18+
=NIk=Arm79А если у вас несколько View? Вообще, вариант, когда View подписывается на события от модели - это вариант MVC Значит, если модель будет общаться с View, это не критично? Тогда, Я еще раз спрошу, зачем Presenter, если можно сделать модель - вью. вы уж определитесь, * model-view - это уже паттерн документ-представление. Вся логика в представлении * mvc - управляющие воздействия переданы контроллеру, но информацию об изменениях модель сообщает напрямую представлениям * mvp - это модификация mcv, которая убирает взаимодействие между представлением и моделью, перенося его на уровень контроллера. Все дело в абстракции. Да и тестировать проще ... |
|||
:
Нравится:
Не нравится:
|
|||
20.12.2010, 16:35 |
|
Шаблон MVP
|
|||
---|---|---|---|
#18+
Arm79, Я программист молодой (за каждой юбкой побегать) вот и пытаюсь разобраться, что бы применяя на практике не сделать в порядке хаос. *mvp - это модификация mcv, которая убирает взаимодействие между представлением и моделью, перенося его на уровень контроллера. Тогда как mvp узнает об изменении модели? - в контроллере, а контроллер связан с View. Если так, это практично? ... |
|||
:
Нравится:
Не нравится:
|
|||
20.12.2010, 17:03 |
|
Шаблон MVP
|
|||
---|---|---|---|
#18+
=NIk=Arm79, Я программист молодой (за каждой юбкой побегать) вот и пытаюсь разобраться, что бы применяя на практике не сделать в порядке хаос. *mvp - это модификация mcv, которая убирает взаимодействие между представлением и моделью, перенося его на уровень контроллера. Тогда как mvp узнает об изменении модели? - в контроллере, а контроллер связан с View. Если так, это практично? практичность понятие относительное, как и применимость моделей в зависимости от ситуации. Я вижу цепочку так: модель генерирует событие, на которое подписан презентер. Презентер на основании какой то своей логики (которой может и не быть) передает это событие просмотрщикам. обратно также: просмотрщик инициирует изменение окружающей среды, презентер оценивает, как и где должна измениться модель данных и вызывает соответствующие методы модели ... |
|||
:
Нравится:
Не нравится:
|
|||
20.12.2010, 17:15 |
|
Шаблон MVP
|
|||
---|---|---|---|
#18+
Arm79, как не странно я тоже так вижу)). Спасибо за ответы, немного разобрался. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.12.2010, 17:32 |
|
Шаблон MVP
|
|||
---|---|---|---|
#18+
Спрошу-ка я тоже: И всё же куда в этом примере с обработкой исключений? В Представлении реализован метод интерфейса IView - "InputDegree" Код: c# 1. 2. 3. 4.
И если оставить _inputBox незаполненным, то до презентера уже ничего не дойдёт и исключение вывалится в форме(представлении). Соответственно и ловить нужно тут. Или я чего-то непонял? Или нужно как-то "абстрагироваться" дальше, например так: Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.
А уже в презентере делать проверку и из него дёргать View что б показать сообщение об ошибке? Или вообще транслировать через презентер "всё барахло" с View в Model и там только проверять и в случае возникновения проблем через презентер дёргать View. Как то мне этот момент непонятен. Спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.12.2012, 16:52 |
|
Шаблон MVP
|
|||
---|---|---|---|
#18+
Вариантов много. Один из них ... |
|||
:
Нравится:
Не нравится:
|
|||
05.12.2012, 00:14 |
|
Шаблон MVP
|
|||
---|---|---|---|
#18+
SeVaВариантов много. Один из них И что это за вариант? Это валидаторы к контролам на форме. По сути - часть формы. Все проверки в Представлении. Правильно? ... |
|||
:
Нравится:
Не нравится:
|
|||
05.12.2012, 15:36 |
|
|
start [/forum/topic.php?fid=20&fpage=185&tid=1405540]: |
0ms |
get settings: |
9ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
44ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
53ms |
get tp. blocked users: |
2ms |
others: | 315ms |
total: | 459ms |
0 / 0 |