Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   вопрос по MVC в AS3. (http://www.flasher.ru/forum/showthread.php?t=125774)

wer32 01.06.2009 17:56

вопрос по MVC в AS3.
 
В самой концепции говорится что "представление" - это все что является интерфейсом: кнопки, скролы, визуальная информация, звуки и тд.

Делаю аудио плеер, собственно интересует момент в реализации отслеживания позиции проигрываемого звука)

В связи с концепцией MVC само проигрывание звука необходимо производить в классе "представление" или в классе "модель"?

Как мне кажется проигрывать звук должен класс "представление", а вот за параметрами проигрываемого звука (в часности позиций) должен следить класс "модели". И от изменения свойства класса "модель" должен диспатчить событие, которое "представление" должно ловить и менятся под параметр "модели" тоесть графически показывать позицию, например в текстфилде.

Правильно ли рассуждаю?

Зарание спасибо за коментарии :)

s8000_1 01.06.2009 18:07

Правильно.

P.S. Опенсурсный, протестированный, отлично работающий MVC аудио-плеер.

BlooDHounD 01.06.2009 18:11

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

wizardjedi 01.06.2009 18:12

Но ещё есть такая сущность как контроллер, которая этим по идее и должна заниматься.

wer32 01.06.2009 18:16

брррр стоп три поста три мнения :D

исходники ща глянем поучимся :)

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

если ошибаюсь поправьте.

flash33 01.06.2009 18:27

Проигрывание в модели, контроллер следит за поступающими командами из/в, представление - это кнопки и т.д. - интерфейс

wer32 01.06.2009 18:31

s8000_1
спасибо за ссылку :)

Как и говорили BlooDHounD и flash33 там реализовано проигрывание в модели.

Яски 01.06.2009 19:30

Неужто мнения flash33 и BloodHounD совпали :)

wizardjedi 01.06.2009 22:02

Лучше код приведите, чтоб понятнее было.

Вообще, в функции модели входит только получение/хранение данных. Грубо говоря, модель вернёт объект типа Sound, а контроллер вызовет метод play().

wer32 01.06.2009 22:17

Поначалу так и пробовал. Правда возникла проблемма. Модель возращает объект Sound. начинаю проигрывать. и тут надо отслеживать позицию, проще всего следить за позиций в через SoundChanell. Можно и этот обьект из модели брать.
Собственно сама проблемма. Как отслеживать из модели позицию Sound. Собственно пробовал смотреть позицию в самой модели поидее и обьект один и тот же, но в модели позиция стоит, а в представлении проигрывается, как и положено.
Можно конечно передать через ивент в контролер, а из контролера запомнить позицию. Но это геморой еще тот. Да и как то совсем не упрощает восприятие проги, что в принципе и должна делать MVC.


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

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