Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Ваша реализация MVC (http://www.flasher.ru/forum/showthread.php?t=131588)

botbot 28.02.2012 18:28

Мне вот интересно, сколько ж это кода было написано просто ради реализации MVC как на первой картинке? Формирование всех этих эвентов, подписывание на события, обработка всей этой тучи всплывающих событий. Я так прикинул, если эвент проходит откуда-то снизу наверх, то в него надо и данные пихать. И для каждого эвента они свои и со своей структурой. А это всё код, код и код...
У меня вот нет mvc, у меня просто логика и отображение и обе части хранят ссылки друг на друга (там где необходимо, а часто просто вьюшка на модель). В итоге - не надо в эвентах передавать ничего, просто сигнализировать о событии. И самих событий тоже немного.
В общем вопрос: стоило ли вообще такую огромную структуру делать, какие накладные расходы получились и какие плюшки это дало?

Zebestov 28.02.2012 18:47

Цитата:

Я так прикинул, если эвент проходит откуда-то снизу наверх, то в него надо и данные пихать.
Цитата:

В итоге - не надо в эвентах передавать ничего, просто сигнализировать о событии.
Сам себе придумал какую-то идею =) сам ее и опроверг.

botbot 28.02.2012 18:52

Неа, тут зависит от условий:
1 есть многоуровневая иерархия = надо передавать данные.
2 есть одноуровневая связь логика-вьюшка = достаточно передавать только сигнал.

Zebestov 28.02.2012 19:00

Цитата:

Сообщение от botbot (Сообщение 1066060)
1 есть многоуровневая иерархия = надо передавать данные.

А взять у target-а все необходимое религия не позволяет?

Psycho Tiger 28.02.2012 20:11

Это 2 разных подхода. Push и Pull.

Zebestov 28.02.2012 21:17

И в данном случае между ними не стоит вопрос "надо".

etc 28.02.2012 21:48

Цитата:

Сообщение от botbot (Сообщение 1066055)
Мне вот интересно, сколько ж это кода было написано просто ради реализации MVC как на первой картинке? Формирование всех этих эвентов, подписывание на события, обработка всей этой тучи всплывающих событий. Я так прикинул, если эвент проходит откуда-то снизу наверх, то в него надо и данные пихать. И для каждого эвента они свои и со своей структурой. А это всё код, код и код...
У меня вот нет mvc, у меня просто логика и отображение и обе части хранят ссылки друг на друга (там где необходимо, а часто просто вьюшка на модель). В итоге - не надо в эвентах передавать ничего, просто сигнализировать о событии. И самих событий тоже немного.
В общем вопрос: стоило ли вообще такую огромную структуру делать, какие накладные расходы получились и какие плюшки это дало?

В событиях в 90% случаях ничего не передаётся. Более того, для реализации подобной структуры базовых классов дай бог десяток наберется.
Pull-подход не переношу на генетическом уровне.

dimarik 29.02.2012 16:37

Это push

Isfet 05.08.2013 18:53

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

Чтобы было понятней: вьюшки нижнего уровня у меня это параментры для фильтра, при изменении одного из них нужно переписать в модели этого компонента данные.

Zebestov 05.08.2013 18:58

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


Часовой пояс GMT +4, время: 19:17.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.