Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   API приложений и сред (http://www.flasher.ru/forum/forumdisplay.php?f=61)
-   -   [robotlegs] - Команда и Медиатор (http://www.flasher.ru/forum/showthread.php?t=154435)

3p.station 17.04.2011 17:18

[robotlegs] - Команда и Медиатор
 
Всем привет. Немного освоившись с МВЦ захотелось пощупать движок. выбрал robotlegs. Читаю мануалы, часть понятна, но есть и непонятные моменты.
Как я понял - часть логики помещается в различные Command'ы и часть в Mediator'ах отдельных вьюшек. Подскажите, пожалуйста, как этим грамотно пользоваться :) (и модель меняется как и с медиатров так и из комманд ? как опредлить где лучше для какого случая это делать)
спасибо.

Aziz Zaynutdinoff 17.04.2011 17:37

Я у себя использую это так:
состояние view меняет его медиатор. Команды меняют модель.
Соответственно при выполнении команды, меняется модель, на изменение модели подписан медиатор, который производит манипуляции со своим представлением.

3p.station 17.04.2011 18:00

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

alatar 17.04.2011 18:17

Это в каком примере медиатор меняет модель?

3p.station 17.04.2011 18:24

самое начало - Hello Flash, класс --- >BallMediator
Код AS3:

private function onClick(e:MouseEvent):void
                {
                        // Manipulate the model
                        statsModel.recordBallClick();
                        // Dispatch to context
                        eventDispatcher.dispatchEvent(new HelloFlashEvent(HelloFlashEvent.BALL_CLICKED, view));
                }

это первое что мне попалось - и сразу написал этот пост :rolleyes:

alatar 17.04.2011 18:25

Нашел в cafetownsend в EmployeeDetail, но там у вьюхи своя собственная модель и менять ее может только этот медиатор. В принципе, такое не рекомендуется, но как и в любой другой ситуации иногда можно отступать от принципов (если ситуация остается контролируемой).

Добавлено через 4 минуты
Цитата:

самое начало - Hello Flash, класс --- >BallMediator
На от он и Hello. Как говорится, если очень хочется, то можно. Можете еще примеры из pureMVC посмотреть, они похожи по-идеологии.

3p.station 17.04.2011 18:37

Цитата:

Сообщение от alatar (Сообщение 990115)
(если ситуация остается контролируемой).

как показывает практика - сначала обычно много кажется контролируемым :D
лучше модель будет менять таки камманда

спасибо вам товарищи за ответы

alatar 17.04.2011 18:39

Цитата:

лучше модель будет менять таки камманда
С этим я и не спорю.

3p.station 17.04.2011 18:53

мы как раз тут совсем не соприли ((((((( : - я лишь соглашался со всеми постами и с вашим тоже
все гуд, спасибо

Zebestov 17.04.2011 20:27

комманда
камманда
команда


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

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