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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 25.03.2012, 14:48
mj_nooker вне форума Посмотреть профиль Отправить личное сообщение для mj_nooker Найти все сообщения от mj_nooker
  № 1  
Ответить с цитированием
mj_nooker

Регистрация: Aug 2009
Сообщений: 99
По умолчанию Быстродействие кода и путь к объекту

Привет всем!

Обчитался статьями об оптимизации кода и теперь сомневаюсь...

Например, вот тут http://flashzone.ru/s/flash-training/optimizatsija/ в главе "Доступ" говорится:

Цитата:
Для программного управления анимацией создаются объекты муви-клипы. Управление ими осуществляется через доступ к их свойствам, вызова их функций. В последних версиях macromedia рекомендует использовать “dot” нотацию, для доступа к объектам через глобальный путь. Это является самым быстрым способом работы по сравнению со всеми другими. Глобальный путь избавляет плеер проводить поиск указанного объекта во всех областях видимости, то есть, если внутри данной области он ничего не находит по заданному имени он ищет выше. Поэтому для быстродействия желательно не опускать глобальный путь, даже если объекты лежат в одной области видимости и можно писать просто их имена. Простой код:


Код AS1/AS2:
my_mc._x = 10;

на 25% уступает по времени выполнения более оптимальному аналогу:


Код AS1/AS2:
_root.my_mc._x = 10;
Конец цитаты.

3 года в голове сидели общепринятые вещи - избегать прямого использования "_root", "_level0", "this" в пути к объекту, а в цитате (и в статьях от других авторов тоже) говорится обратное, мол, чем точнее указать путь - тем меньше времени на поиски в областях видимости и т.д.
Знаю (догадываюсь), что, все-таки, есть частные случаи, в которых надо делать либо так, либо эдак. Но размышления после 2х суток кодинга к горящему дедлайну лишь запутали и без того уставшее сознание ))

А как делаете вы?

Старый 25.03.2012, 16:43
Tails вне форума Посмотреть профиль Отправить личное сообщение для Tails Найти все сообщения от Tails
  № 2  
Ответить с цитированием
Tails
 
Аватар для Tails

блогер
Регистрация: Dec 2008
Адрес: г. Чебоксары
Сообщений: 2,259
Записей в блоге: 6
Мы перешли на AS3

А вообще создайте ссылку на свой клип:
Код AS1/AS2:
var clip = _root.my_mc;
clip._x +=10;
Не проверял, но теоретически должно работать так-же быстро как с root, так-как плееру чётко указан путь.
__________________
Дети не должны знать о своих родителях


Последний раз редактировалось Tails; 25.03.2012 в 16:47.
Старый 25.03.2012, 19:04
mj_nooker вне форума Посмотреть профиль Отправить личное сообщение для mj_nooker Найти все сообщения от mj_nooker
  № 3  
Ответить с цитированием
mj_nooker

Регистрация: Aug 2009
Сообщений: 99
А что в AS3?

по поводу примера и прямого указания плейеру - таки пришло время исследовать, вопрос задавал, надеясь, что кто-нибудь очень глубоко просек фишку )

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

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

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


 


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


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