|  дцать причин не любить AS3, AVM1 против AVM2 | 
 
	
Здравствуйте, гость ( Вход | Регистрация )
|  дцать причин не любить AS3, AVM1 против AVM2 | 
|  1.03.2009 - 01:15 
				 Сообщение
					#101
					
				
			 | |
|  Ветеран конференции      Группа: Пользователь Сообщений: 1134 Регистрация: 27.02.2009 Из: Moscow Пользователь №: 9144  | 
				В свое время в сети попалась презентация "50 причин перейти на AS3", так, что тут будет (со временем) нечто вроде контрответа, а также разбор отличий AVM1 (AS1/AS2) от AVM2 (AS3). (не следует считать этот топик отрицанием AVM2 и AS3. Хороший флешер должен уметь понимать любой код: от кода в стиле флеш-5 (на объектах), до кода AS3. Но чтобы хорошо в чем-то разбираться, надо знать не только сильные стороны, но и слабые, а также тщательно скрываемые) Итак, поехали: 1) Адоб сознательно (умышленно) пошла на СДЕРЖИВАНИЕ развития AVM1. От версии к версии (флеш-плеера) AVM1 развивалась. Но адоб выпустила новые продукты - основанные на AVM2 (флеш-редактор-9 - он же CS3 и уже CS4, флексы всех мастей и аир). Развитие AVM1 тормозиться, заставляя переходить сообщество на продукты с использованием AVM2. Например, интерпретатор AVM1 может считывать байт-коды названия меток кадра. Т.е. в самом ФП эта возможность реализована. А вот реализацию этого в AS1/2 адобовцы добавить "забыли", хотя для AVM2 с AS3 это сделано. И так во многом. 2) AS3 не сохранил преемственности с прежними версиями AS. Это ДРУГОЙ язык. С другими традициями и особенностями применения. По сути, те, кто захочет и кого заставит адоб перейти на AVM2 будут должны выучить новый язык. 3) AS3 имеет незаметные, но фатальные отличия от AS2. Например, в типизации :Void и :void Пустячок? Но отчего у макромедии с каждым обновлением ФП не скакали зарезервированные слова? 4) AS3 гораздо более НЕГИБКИЙ (какое издевательство над слово флекс), чем AS1. Это касается очень широкого спектра средств языка: наследования, областей видимости, обращения к объектам, формата записи во внешние файлы и т.д. и т.п. (см. ниже) 5) AS3 не позволяет менять родителей класса. AS1 делает это легко, динамически и в любое время. Например, после этого: Код Video.prototype.__proto__=MovieClip.prototype У объекта Видео начинают работать методы мувиклипа типа swapDepths() и removeMovieClip() !!! 6) Код на таймлайне 7) Новый синтаксис пакетов и классов 8) Нет duplicateMovieClip 9) Необходимость деструкторов 10) Мучения с Sound 11) Выделение искусственных классов 12) Громоздкий хелп 13) Кастрация событийной модели 14) Смешной onReleaseOutside 15) Зачем в AS3 убили arguments.caller 16) Как сыпятся песочницы адоба 17) Восьмеричный запрет б/н Откровения мистера Ли из адоба 18) Жесткий override 19) Ограничения override 20) Убогий super 21) А есть ли полиморфизм? 22) Немного об ECMAScript 23) Ограничения таймлайна 24) Глобальный объект и глобальная видимость 25) Они убили watch()... 26) Нет глобальных событий 27) Компилятор AVM2 не оптимизирует код 28) valueOf () б/н Про вес ФП 29) Виртуализация таймлайна и баги с этим связанные 30) Идиотизм Loader-а 31) "Легкие" глубины. 32) Автосоздание прототипов 33) allowDomain у LocalConnection 34) Неоправдавшиеся надежды по поводу расшаренных объектов 35) Преобразование типа null к числам 36) Зачем buttonMode для мувиклипов? 37) Run-time ошибки 38) Ограничения с работой JavaScript 39) isDown почила в бозе... Сообщение отредактировал chingachgoog - 1.07.2011 - 14:38 -------------------- | 
|  | |
 chingachgoog   дцать причин не любить AS3   1.03.2009 - 01:15
 chingachgoog   дцать причин не любить AS3   1.03.2009 - 01:15 
  HaWK   
Здесь согласен. Новая система глубин (индексов) с...   25.10.2010 - 13:56
 HaWK   
Здесь согласен. Новая система глубин (индексов) с...   25.10.2010 - 13:56 
  HaWK   
Кому как. "Плохому танцору......" дальш...   25.10.2010 - 14:13
 HaWK   
Кому как. "Плохому танцору......" дальш...   25.10.2010 - 14:13 
  HaWK   
Думаешь AS3 не развалился  бы если бы событийная ...   25.10.2010 - 14:24
 HaWK   
Думаешь AS3 не развалился  бы если бы событийная ...   25.10.2010 - 14:24
 
  chingachgoog   Senior Programmer, умей оптимизировать свой код, ч...   25.10.2010 - 15:16
 chingachgoog   Senior Programmer, умей оптимизировать свой код, ч...   25.10.2010 - 15:16 
  HaWK   
Ну "типа" в AS1 модель такая:
объект.со...   25.10.2010 - 15:25
 HaWK   
Ну "типа" в AS1 модель такая:
объект.со...   25.10.2010 - 15:25
 
  chingachgoog   Ну "типа" в AS1 модель такая:
[i]объект....   25.10.2010 - 15:49
 chingachgoog   Ну "типа" в AS1 модель такая:
[i]объект....   25.10.2010 - 15:49 
  HaWK   
Для людей, умственно-отсталых - фраза означает ...   25.10.2010 - 16:03
 HaWK   
Для людей, умственно-отсталых - фраза означает ...   25.10.2010 - 16:03
 
  chingachgoog   Ладно, не буду мальчонку добивать - а то ведь и пр...   25.10.2010 - 16:30
 chingachgoog   Ладно, не буду мальчонку добивать - а то ведь и пр...   25.10.2010 - 16:30 
  HaWK   А вообще у нашего chingachgoog-а глисты в жопе. Он...   25.10.2010 - 16:40
 HaWK   А вообще у нашего chingachgoog-а глисты в жопе. Он...   25.10.2010 - 16:40
 
  uspechov   А вообще у нашего chingachgoog-а глисты в жопе. Он...   11.03.2011 - 18:43
 uspechov   А вообще у нашего chingachgoog-а глисты в жопе. Он...   11.03.2011 - 18:43 
  tiHo   
Это я перевожу ваши последние посты, глазами ску...   25.10.2010 - 19:49
 tiHo   
Это я перевожу ваши последние посты, глазами ску...   25.10.2010 - 19:49 
  HaWK   
А смысл делать такое?
Если просто нужно засунуть...   25.10.2010 - 20:48
 HaWK   
А смысл делать такое?
Если просто нужно засунуть...   25.10.2010 - 20:48
 
  chingachgoog   А смысл делать такое?
Если просто нужно засунуть П...   26.10.2010 - 13:22
 chingachgoog   А смысл делать такое?
Если просто нужно засунуть П...   26.10.2010 - 13:22 
  HaWK   Я понял о чём речь. Но если посмотреть с точки зре...   26.10.2010 - 13:48
 HaWK   Я понял о чём речь. Но если посмотреть с точки зре...   26.10.2010 - 13:48 
  MustLive   Ребята. Я временно закрою тему, чтобы снять накал ...   26.10.2010 - 14:48
 MustLive   Ребята. Я временно закрою тему, чтобы снять накал ...   26.10.2010 - 14:48
 
  chingachgoog   33) allowDomain у LocalConnection
Помимо того, чт...   14.01.2011 - 15:04
 chingachgoog   33) allowDomain у LocalConnection
Помимо того, чт...   14.01.2011 - 15:04

 
  chingachgoog   34) Неоправдавшиеся надежды по поводу расшаренных ...   14.01.2011 - 15:11
 chingachgoog   34) Неоправдавшиеся надежды по поводу расшаренных ...   14.01.2011 - 15:11

 
  geenny   У класса LocalConnection под avm2 есть еще один не...   7.09.2011 - 14:12
 geenny   У класса LocalConnection под avm2 есть еще один не...   7.09.2011 - 14:12


 
  chingachgoog   У класса LocalConnection под avm2 есть еще один не...   7.09.2011 - 19:43
 chingachgoog   У класса LocalConnection под avm2 есть еще один не...   7.09.2011 - 19:43 
  chingachgoog   35) Преобразование типа null к числам
До версии 7...   26.01.2011 - 17:54
 chingachgoog   35) Преобразование типа null к числам
До версии 7...   26.01.2011 - 17:54 
  HaWK   uspechov, уже плотно работал с AS3? Если работал -...   11.03.2011 - 23:38
 HaWK   uspechov, уже плотно работал с AS3? Если работал -...   11.03.2011 - 23:38
 
  chingachgoog   36) Зачем buttonMode для мувиклипов?
В AVM1 было ...   28.03.2011 - 17:30
 chingachgoog   36) Зачем buttonMode для мувиклипов?
В AVM1 было ...   28.03.2011 - 17:30

 
  HaWK   
не то?  :)   28.03.2011 - 17:33
 HaWK   
не то?  :)   28.03.2011 - 17:33 
  HaWK   
Ты уже не знаешь за что придираться.
Новая AVM ...   28.03.2011 - 19:40
 HaWK   
Ты уже не знаешь за что придираться.
Новая AVM ...   28.03.2011 - 19:40 
  chingachgoog   37) Run-time ошибки
На самом деле для разработчик...   30.03.2011 - 18:12
 chingachgoog   37) Run-time ошибки
На самом деле для разработчик...   30.03.2011 - 18:12
 
  chingachgoog   38) Ограничения с работой JavaScript
AVM1 имел ун...   18.04.2011 - 16:14
 chingachgoog   38) Ограничения с работой JavaScript
AVM1 имел ун...   18.04.2011 - 16:14

 
  chingachgoog   39) isDown почила в бозе...
Мало того, что Адоб л...   21.06.2011 - 13:19
 chingachgoog   39) isDown почила в бозе...
Мало того, что Адоб л...   21.06.2011 - 13:19 
  DJKOT   ничего себе юморок... трудно представить, на что э...   21.06.2011 - 16:57
 DJKOT   ничего себе юморок... трудно представить, на что э...   21.06.2011 - 16:57
 
  chingachgoog   Ну там еще isToggled	() прибили, но я уж не стал о...   22.06.2011 - 10:53
 chingachgoog   Ну там еще isToggled	() прибили, но я уж не стал о...   22.06.2011 - 10:53 
  chingachgoog   40) Нет аналога onLoadComplete	
В LoaderInfo собы...   1.07.2011 - 15:32
 chingachgoog   40) Нет аналога onLoadComplete	
В LoaderInfo собы...   1.07.2011 - 15:32 
  chingachgoog   41) Как обычное видео AVM2 убивает
Обычное флеш-в...   26.03.2012 - 15:25
 chingachgoog   41) Как обычное видео AVM2 убивает
Обычное флеш-в...   26.03.2012 - 15:25 
  chingachgoog   42) smoothing vs forceSmoothing
Докладываю. В AVM...   20.06.2012 - 11:27
 chingachgoog   42) smoothing vs forceSmoothing
Докладываю. В AVM...   20.06.2012 - 11:27 
  chingachgoog   43) enabled работает нефункционально!
В допол...   20.09.2012 - 13:40
 chingachgoog   43) enabled работает нефункционально!
В допол...   20.09.2012 - 13:40 
  chingachgoog   44) Недокументированные фичи
Да, в AVM1 была масс...   14.03.2013 - 17:33
 chingachgoog   44) Недокументированные фичи
Да, в AVM1 была масс...   14.03.2013 - 17:33 
  MustLive   addFrameScript - интересная функция. Чтобы не рука...   15.03.2013 - 01:35
 MustLive   addFrameScript - интересная функция. Чтобы не рука...   15.03.2013 - 01:35 
  chingachgoog   45) XML vs E4X
Вообще, хотя лично мне E4X не удоб...   5.04.2013 - 18:01
 chingachgoog   45) XML vs E4X
Вообще, хотя лично мне E4X не удоб...   5.04.2013 - 18:01|   | 
|   | Текстовая версия | Сейчас: 14.06.2013 - 20:34 |