|
|
|||||
Регистрация: Nov 2001
Адрес: Казань
Сообщений: 118
|
Звук и графика - это представление. Модель хранит позицию (текущее время) проигрывания, общее время композиции, громкость, название трека. Представление - цифры нв экране, название песни, индикатор проигрывания и пр. Контроллер - регулятор громкости, след. композиция, стоп/пауза и т.д.
|
|
|||||
.
|
Вставлю тоже пять копеек. Все нижесказанное - мой бред. Звук есть представлние, которе генерит евенты типа сколько проигралось (композиция поможет сделать SoundView), играется оно или остановлено, слушает модель на предмет play(), stop(), position (SoundEvent.PLAY, SoundEvent.STOP, SoundEvent.CHANGE_POSITION). Контроллер: есть и он, естесственно, диктует модели такие состояния, а также из SoundView узнает её (вьюхи) состояние и сеттит модель определенным образом.
|
|
|||||
Регистрация: Dec 2008
Сообщений: 88
|
dimarik
Изначально так и думал. Столкнулся с проблеммой как вытянуть из Представления позицию sound. А что это вы за евенты описали ?? SoundEvent.PLAY. SoundEvent.STOP, SoundEvent.CHANGE_POSITION Это просто пользовательские? Порылся в адобовском справочнике, что то там таких нету. |
|
|||||
Et cetera
Регистрация: Sep 2002
Сообщений: 30,784
|
Пользовательские.
|
|
|||||
Регистрация: May 2009
Сообщений: 80
|
Господа, может перед рассуждением на эту тему стоит задать себе вопрос: А для чего вобще нужен паттерн проэктирования MVC (Model View Controller)?
Попробую ответить, поправьте если ошибаюсь. Самому интерестно стало верно ли понимаю. Первое и самое главное, это как раз разделение модели (хранение данных), представления (визуализация), и управления. Отсюда следует что: модель не должна ничего делать кроме как загружать и хранить песню или ссылку на песню Представление должно только добавлять на экран элементы плеера и управлять визуализацией касательно них. Контроллер должен обрабатывать действия пользователя и применять их к песне Для чего нужно разделение? Для того, чтобы можно было изменять поведение модели без ущерба для контроллера и представления Поведение контроллера без ущерба модели и.т.д Про инкапсуляцию данных молчу Последний раз редактировалось Deidara; 02.06.2009 в 18:44. |
|
|||||
.
|
В общих чертах правильно. О code reuse не упомянули. И скорее изменение представлений никак не повлияет на оставшуюся парочку - контроллер и модель.
А вот изменение модели, тех её свойств, которые отслеживаются вьюхами повлечет за собой изменение последних. Представлений может быть несколько. В моем рассуждении в данном приложении представлением является зам звук (SoundView), а так же упомянутые Вами элементы плеера. Представления вполне могут "питаться" от одной модели. Цитата:
|
|
|||||
Регистрация: May 2009
Сообщений: 10
|
2 Deidara, правильно мыслите!
А вообще, жизнь гораздо разнообразнее и порой применение паттернов становиться самоцелью, что не верно. Даже в описании паттернов написано, что не надо использовать их без необходимости. Не исключено, что вашу задачу можно решить без MVC более элегантным способом, а то вон сколько копий поломали |
|
|||||
Регистрация: Dec 2008
Сообщений: 88
|
Мышление есть отражение подсознания. Сложно сочинять что то новое не имея достаточного багажа знаний Да и быстрее выучить уже обсосаные патерны. ИМХО.
|
|
|||||
.
|
Цитата:
|
|
|||||
Регистрация: May 2009
Сообщений: 10
|
2 dimarik, Я с вами полностью согласен, паттерны для этого и создавались. Но их использование должно быть осознанным, а не целью просто их использовать. MVC отличный паттерн, но только им не ограничивается весь набор решений.
|
Часовой пояс GMT +4, время: 02:58. |
|
« Предыдущая тема | Следующая тема » |
Опции темы | |
Опции просмотра | |
|
|