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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 25.03.2008, 02:39
wvxvw вне форума Посмотреть профиль Отправить личное сообщение для wvxvw Найти все сообщения от wvxvw
  № 1  
Ответить с цитированием
wvxvw
Modus ponens
 
Аватар для wvxvw

модератор форума
Регистрация: Jul 2006
Адрес: #1=(list #1#)
Сообщений: 8,049
Записей в блоге: 38
По умолчанию Как лучше организовать подписку на событие группы ф-ций?

Вот, интересует такой вопрос: Нужно рассылать одно и то же событие объектам, потомкам объектов, разным группам объектов и т.д. Какая схема предпочтительнее с точки зрения архитектуры\производительности?
схема 1:

Код:
генератор события
		|
	||||||||||
объекты получающие событие
схема 2:
Код:
генератор события
		|
	  / | \
	промежуточные звенья передающие событие дальше по цепочке
	/|\ 	/|\ 	/|\ 
объекты получающие событие
__________________
Hell is the possibility of sanity

Старый 25.03.2008, 05:02
Mr. Fixit вне форума Посмотреть профиль Найти все сообщения от Mr. Fixit
  № 2  
Ответить с цитированием
Mr. Fixit
Banned
[+1 08.05.08]
[+4 14.04.08]
[+1.3 02.05.08]

Регистрация: Oct 2006
Адрес: кагбэ Киеф!!1
Сообщений: 1,473
считаю, что "схема 1"..
потому что, и читабельность лучше, и нету запутанных ссылок.

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

Регистрация: Sep 2002
Сообщений: 30,787
Какого рода объекты?

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

Регистрация: Dec 2005
Адрес: мухосранск
Сообщений: 661
Отправить сообщение для divinus с помощью ICQ
если заранее не известно какой именно объект должен обработать событие, есть симпатичный паттерн "цепочка обязанностей" (Chain of Responsibility)
__________________
Кто может делать - делает, кто не может делать - учит, кто не может учить - управляет...

Старый 25.03.2008, 13:16
wvxvw вне форума Посмотреть профиль Отправить личное сообщение для wvxvw Найти все сообщения от wvxvw
  № 5  
Ответить с цитированием
wvxvw
Modus ponens
 
Аватар для wvxvw

модератор форума
Регистрация: Jul 2006
Адрес: #1=(list #1#)
Сообщений: 8,049
Записей в блоге: 38
Вобщем, чтобы немного прояснить ситуацию:
Генератор события - класс Плеер, он генерит фреймЧендж(номер кадра).
А подписать на это нужно:
- класс заведующий абстракным представлением того, что сейчас проиcxодит в плеере.
- слои (уровни) плеера, которые в свою очередь могут содержать по нескольку объектов, которым тоже это событие нужно, но, мало того, у них еще могут быть общие для нескольких элементов транзишены/эффекты изменяющиеся по ходу проигрывания.
- элементы интерфейса осуществяющие и отображающие плейбек
ну и еще несколько менее значимых объектов, типа класса передающего это же событие в ЖС и т.п.

Про Chain of Responsibility поищу. Спасиб.

Синхронность получения событий может иметь очень принципиальное значение...
__________________
Hell is the possibility of sanity

Старый 25.03.2008, 13:54
terbooter вне форума Посмотреть профиль Отправить личное сообщение для terbooter Найти все сообщения от terbooter
  № 6  
Ответить с цитированием
terbooter

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


Последний раз редактировалось terbooter; 25.03.2008 в 13:57.
Старый 25.03.2008, 14:08
wvxvw вне форума Посмотреть профиль Отправить личное сообщение для wvxvw Найти все сообщения от wvxvw
  № 7  
Ответить с цитированием
wvxvw
Modus ponens
 
Аватар для wvxvw

модератор форума
Регистрация: Jul 2006
Адрес: #1=(list #1#)
Сообщений: 8,049
Записей в блоге: 38
Да, но тут возникает такой вопрос:
по сути, раздача события = последовательный вызов функций. Функции связанные с рендерингом могут выполнятся долго... Вопрос, на сколько независимо события поступают к разным объектам? Т.е. если одно событие запустит долго выполняющуюся функцию, когда вызовуться следующие подписанные на него функции?
__________________
Hell is the possibility of sanity

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

Регистрация: May 2003
Адрес: Tallinn
Сообщений: 3,182
в pureMVC framework это классно реализовано...советую посмотреть
__________________
Flash Developer
Папа TDP4 Team Battle

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

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

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


 


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


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