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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 22.10.2011, 15:04
in4core вне форума Посмотреть профиль Отправить личное сообщение для in4core Найти все сообщения от in4core
  № 11  
Ответить с цитированием
in4core
[+4 06.05.14]
 
Аватар для in4core

Регистрация: Mar 2009
Сообщений: 4,219
Записей в блоге: 14
Цитата:
1. не protected, a private.
Ну да, про протектед это я так ляпнул. конечно привейт, я вообще в своих проектах без протектеда обхожусь всегда, ну если только оверрайдить ниче не надо

Wolsh может че и напутал конечно, но я вот о чем
Код AS3:
object.addEventListener('some' , func )
GlobalDestroyer.add(someObject)
.....
add some 100 diffrent objects
....
GlobalDestroyer.destroyAll() // сдесь снимаются слушатели с каждого объекта , затем объекты снимаются с дисплей листа
Так чтобы произвести последнее действие нужно знать какие методы держать слушатели, разве нет?
Иначе пришлось бы делать что то в духе add(object , func ) , что неудобно ибо слушателей на 1 объект я могу повесить много, и каждый раз обращаться не хочется, хочется 1 раз добавить объект и все, а глобал в итоге будет знать скока там всего на нем висит.
Или вы о чем то другом ?
__________________
Марк Tween

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

модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
in4core, я уже не раз тут высказывался о своем отрицательном отношении ко всяким глобальным штуковинам, так что в такой нелепой на мой взгляд деятельности я Вам не смогу ничем помочь. Поскольку нет нативного способа вытащить ссылку на хендлер (по причине, которую я привел выше – такая возможность означала бы возможность доступа к приватным полям), для такого глобального пула Вам придется сохранять ссылки на хендлеры. Результат очевиден – GlobalDestroyer делает невозможным удаление объектов из памяти, так как хранит на них ссылки. Придумайте название получше, чтобы разрешить этот парадокс)).
Я стараюсь придерживаться архитектуры Master/Slave. У каждого объекта есть только один хозяин, который создал этот объект и имеет с ним контракт. Только хозяин может приказывать объекту и распоряжаться его судьбой, но хорошая новость в том, что хозяин знает все что нужно об этом объекте. Если на объекте висят слушатели, то это хозяин их повесил, и для него не проблема снять все слушатели. Ввод в эту архитектуры какой-то внешней суперсилы типа глобальных Вершителей-Нарушителей, убивает на корню какую-то надежду на контроль, соблюдение контрактов и выполнение ответственностей, и лично мной как допустимое в программировании не рассматривается.

Добавлено через 4 минуты
GlobalDestroyer – отличное название. Он полностью разрушает все связи между органами программы, превращая проект в разлагающийся труп.
__________________
Reality.getBounds(this);

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

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

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


 


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


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