Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Насчет скорости AS3 (http://www.flasher.ru/forum/showthread.php?t=137753)

sersir 22.03.2010 03:10

Насчет скорости AS3
 
Всем привет. Прочитав форум наткнулся на один коммент, автор коммента говорил, что если писать процедурно в AS3, то по скорости производительности код будет работать как AS1/AS2. Правда ли это ? Заранние спасибо за ответы.

wvxvw 22.03.2010 04:24

В AS3 нет возможности писать процедурно (ну, не дольше, чем дефолтный таймаут на выполнения одного стак фрейма), у языка нет скорости, скорость есть у рантайма - у разных рантаймов она может отличаться.

sersir 22.03.2010 21:04

Как так. Вроде спокойно можно писать сколько угодно кода во фреймах без ООП =)

Добавлено через 2 минуты
Ну а в скорости, я понял, что это бред, спасибо =)

iflamberg 22.03.2010 21:18

все переменные заданные во фрейме превращаются в public переменные класса мувика, в котором написаны, а код во фреймах превращается в что-то типа:

Код:

addEventListener (Event.ENTER_FRAME,enterFrameHr);

private function enterFrameHr (e:Event):void {
if (currentFrame==1) {
  //кусок код
} else if (currentFrame==2){
  //кусок кода
}


wvxvw 22.03.2010 21:35

Вообще-то не совсем. Паблики - только дисплей объекты на таймлайне, остальное - internal.
Процедурно - это когда у вас есть только функции (нет объектов). Вместо объктов вы можете, например, использовать ссылки на участки памяти и т.п. Т.е. технически, например, Sprite не совместим с процедурным подходом, потму, что он объект. В AS1 / AS2 тоже нельзя писать процедурно - это все ОО языки просто реализации ОО в них разная, по нынешним временам реализацию ОО в AS1 / AS2 можно считать неполной / плохой, но тем не менее это никаким боком не отменяет того, что процедурно писать код в нем не получится, ну за исключением каких-то самых простых вещей, и те будут ограничены во времени выполнения - т.как для того, чтобы начать новый стак фрейм, вам прийдется либо использовать setInterval - это уже метод, а не функция, либо привязываться к onEnterFrame - который, опять же свойство / хендлер, чего тоже не может быть в процедурном языке.

iflamberg 22.03.2010 21:56

аригато, сенпай

sersir 22.03.2010 23:54

спасибо wvxvw, теперь буду знать =)


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

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