Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 26.10.2008, 18:13
Gaen вне форума Посмотреть профиль Отправить личное сообщение для Gaen Найти все сообщения от Gaen
  № 1  
Ответить с цитированием
Gaen
strange mood
 
Аватар для Gaen

модератор форума
Регистрация: Jul 2004
Адрес: Питер
Сообщений: 1,653
Записей в блоге: 1
Отправить сообщение для Gaen с помощью ICQ Отправить сообщение для Gaen с помощью Skype™
Arrow Как выглядит MVC во флэше?

Недавно дал себе труд ознакомиться с MVC-архитектурой и понял что это есть хорошо.

Но пока не совсем представляю, как именно во флэше разносить код на модель-вью-контроллер. Больше всего смущает привязка классов к спрайтам. Т.е. DocumentClass обязательно должен быть DisplayObject'ом, и тогда он вроде как одновременно получается view и controller...

Объясните пожалуйста на простом примере.

Имеем приложение, которое содержит 2 текстфилда (txtAddr и txtContent) и кнопку (btnGo). Пользователь вводит в txtAddr некий урл, нажимает на btnGo, после чего с введённого адреса подгружается текст и отображается в txtContent. При возникновении ошибки в txtContent пишем "Error".

Как в данном случае будет организован код?
__________________
тонкий тролль, осеянный благодатью

Старый 26.10.2008, 21:48
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 2  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,787
DocumentClass может создать контроллер и передать ему ссылку на самого себя и всё, остальное делает контроллер.

Старый 26.10.2008, 22:27
terbooter вне форума Посмотреть профиль Отправить личное сообщение для terbooter Найти все сообщения от terbooter
  № 3  
Ответить с цитированием
terbooter

Регистрация: Oct 2006
Адрес: Novosibirsk-Kaliningrad
Сообщений: 1,278
Отправить сообщение для terbooter с помощью ICQ Отправить сообщение для terbooter с помощью Skype™
У меня тоже есть вопросы на эту тему, но немного с другой стороны.
Есть суперкласс для View, который получает ссылку на модель.
Все его дети слушают событие апдэйт и обновляют данные из модели и перерисовывают вид. Так вот, если таких элементов очень много, то получается неразумным перерисовывать абсолютно весь Вид, то есть нужно добавить несколько разновидностей события "обновить": обновить статус, обновить чат лог, обновить список чатов. Но такое разделение приводит к тому что архитектуру лучше строить исходя из функциональности модуля. То есть не объединять все виды в один, а выделить блоки: окно истории чата, окно со списком чатов.

Старый 26.10.2008, 23:01
CrazyFlasher вне форума Посмотреть профиль Отправить личное сообщение для CrazyFlasher Найти все сообщения от CrazyFlasher
  № 4  
Ответить с цитированием
CrazyFlasher
 
Аватар для CrazyFlasher

Регистрация: May 2003
Адрес: Tallinn
Сообщений: 3,182
сейчас делаю игру, используя pureMVC...зачётная вещь
http://puremvc.org/

Старый 26.10.2008, 23:11
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 5  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,787
terbooter, в таком варианте нужно организовывать древовидность модели и отдельные её части со своими событиями.

Старый 27.10.2008, 01:11
Gaen вне форума Посмотреть профиль Отправить личное сообщение для Gaen Найти все сообщения от Gaen
  № 6  
Ответить с цитированием
Gaen
strange mood
 
Аватар для Gaen

модератор форума
Регистрация: Jul 2004
Адрес: Питер
Сообщений: 1,653
Записей в блоге: 1
Отправить сообщение для Gaen с помощью ICQ Отправить сообщение для Gaen с помощью Skype™
Является ли стандартный класс fl.transitions.Tween контроллером?
__________________
тонкий тролль, осеянный благодатью

Старый 27.10.2008, 08:34
Бармалей вне форума Посмотреть профиль Отправить личное сообщение для Бармалей Посетить домашнюю страницу Бармалей Найти все сообщения от Бармалей
  № 7  
Ответить с цитированием
Бармалей
 
Аватар для Бармалей

Регистрация: Jun 2005
Адрес: Москва
Сообщений: 784
Отправить сообщение для Бармалей с помощью ICQ
Цитата:
Сообщение от GAIKER Посмотреть сообщение
Является ли стандартный класс fl.transitions.Tween контроллером?
Не является.
__________________
Garbage Collector || AIR (Apollo) Docs

Старый 27.10.2008, 10:32
terbooter вне форума Посмотреть профиль Отправить личное сообщение для terbooter Найти все сообщения от terbooter
  № 8  
Ответить с цитированием
terbooter

Регистрация: Oct 2006
Адрес: Novosibirsk-Kaliningrad
Сообщений: 1,278
Отправить сообщение для terbooter с помощью ICQ Отправить сообщение для terbooter с помощью Skype™
Цитата:
Сообщение от __etc Посмотреть сообщение
terbooter, в таком варианте нужно организовывать древовидность модели и отдельные её части со своими событиями.
Тогда уж совсем отделить эти части и получить много модулей построенных по архитектуре MVC, а потом заметить что модулей много, но каждый в отдельности довольно простой, и реализация в нем MVC только лишний код. (Где-то можно вид и контроллер слепить в один класс) А затем все эти модули собрать медиатором (Document Class)

C PureMVC игрался долго, но по-серьезному применить так и не получилось -(. Мне кажется, без этого фреймворка можно писать ничуть не медленнее. И если придерживаться идеи MVC то все её бонусы сохраняются.

Старый 27.10.2008, 12:35
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 9  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,787
Цитата:
Сообщение от terbooter Посмотреть сообщение
Тогда уж совсем отделить эти части и получить много модулей построенных по архитектуре MVC
Можно, но линейность модели при древовидном view неудобна.

Старый 27.10.2008, 19:23
Gaen вне форума Посмотреть профиль Отправить личное сообщение для Gaen Найти все сообщения от Gaen
  № 10  
Ответить с цитированием
Gaen
strange mood
 
Аватар для Gaen

модератор форума
Регистрация: Jul 2004
Адрес: Питер
Сообщений: 1,653
Записей в блоге: 1
Отправить сообщение для Gaen с помощью ICQ Отправить сообщение для Gaen с помощью Skype™
__etc, можешь расписать пример из оп-поста?
__________________
тонкий тролль, осеянный благодатью

Создать новую тему Ответ Часовой пояс GMT +4, время: 13:10.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


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


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