PDA

Просмотр полной версии : AS1.0/AS2.0 - отличия и конфликт версий


: hr :
07.10.2005, 11:52
Вот вышел 8-ой флэш, анонсирован AS 3.0, одним словом пора серьезно браться за AS 2.0 :-) Друзья, помогите консерватору разобраться пожалуйста - где же грань между AS 1.0 и AS 2.0? Положим с новой ООП-моделью я разобрался - class, public, private, extends и прочее понятно. Однако если речь идет о небольших программах по 200-300 строк, где нет желания/необходимости использовать внешние классы, в чем будет заключаться суть AS 2.0? Строгая типизация? И все? Отовсюду слышно - мешать одновременно AS1.0 и as2.0 не рекомендуется из-за непредсказуемых последствий. А где эта грань между AS 1 и AS 2? Ведь я могу установив publish settings в AS 2.0 использовать старую прототипную модель ([Класс].prototype.[свойство/метод]) или организовать наследование ([Класс].prototype = new [Класс])? В чем заключается смешивание одной версии с другой, помогите пожалуйста разобраться!

Mokus
07.10.2005, 14:02
анонсирован AS 3.0
Можна узнать хто и когда анонсировал, или линк кинуть - чтото я етот анонс пропустил...

пора серьезно браться за AS 2.0 :-)
Давно пора.

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

мешать одновременно AS1.0 и as2.0 не рекомендуется из-за непредсказуемых последствий
Последствия всегда легко предсказуемы.

Ответ: важно понимать, что существует реально только AS1.0 модель, а AS2.0 существует до момента компиляции - при компиляции AS2.0 классы компилируються в старую прототипную модель.

iNils
07.10.2005, 14:06
Анонс
http://www.macromedia.com/devnet/flex/articles/flex2_intro.html

: hr :
07.10.2005, 14:47
Последствия всегда легко предсказуемы.

Ответ: важно понимать, что существует реально только AS1.0 модель, а AS2.0 существует до момента компиляции - при компиляции AS2.0 классы компилируються в старую прототипную модель.

Хорошо, а что вообще в таком случае значит мешать AS1.0 и AS2.0 - с точки зрения формального синтаксиса?

KidsKilla
07.10.2005, 15:02
к примеру использовать прототипы в ас2 классах. __proto__ тем более.

для этого есть extends итп...

silin
07.10.2005, 19:59
>>к примеру использовать прототипы в ас2 классах..
не согласен тут: использовать ссылку на прототип компилятор AS2 не запрещает, иногда это очень удобно
зы: согласен с Мокусом: AS2 дает преимущества в части контроля исходного скрипта, но никак не эффективности конечного кода..

зызы:насчет AS3: 'With ActionScript 3.0, we have achieved more than simple compliance with the ECMAScript standard' : здесь (http://www.macromedia.com/devnet/flex/articles/flex2_intro.html) (но это после релиза Flash Player 8.5 )

KidsKilla
07.10.2005, 21:14
нуда, компилятор не запрещает и это оч даже удобно порой, но це неправильно.
но эттак можно, ток потому что в итоге тот же бинарик, что и из ас1 получается.

по поводу эффективности тоже правда, но ас2 создавался как раз для лучшего кодирования и дебага (и как следствие и то может быть, эффективности кода)...

silin
07.10.2005, 21:46
со всем согласен, кроме разве что 'це неправильно' (если оно работает как мне надо, и мне так удобнее, то наплевать мне на правила)
зы: насчет эффективности кода: ежели в новом плеере новый код будет быстрее работать, то о чем разговор, а пока..

iNils
07.10.2005, 21:50
Вопрос сколько будет весить плеер. И не получиться ли так в России как Shockwave. Вроде есть, а почти никто не использует.