Бесплатно скачать Adobe Flash Player

Нарядная инициализация классов ActionScript 1.0

"AS2 классы привнесли новые понятия в программирование на ActionScript. Приватные и публичные методы, статические члены класса и т.п. Однако, тот факт, что AS2 класс может быть откомпилен в 6-ю версию плеера говорит от том, что в самой сути кода ничего не изменилось, что всё это реализуемо в AS1. Как?"

Читаем дальше на сайте Ивана Дембицкого:
"Нарядная инициализация AS1 классов"

Писал: Rost, 29 Декабрь 2004 16:11

Комментарии:

планирую легкое продолжение: вещатель класса

Iv - 29 Декабрь 2004 17:13

За идею использования последовательности горячих клавиш Большое спасибо.

А в остальном, мне больше нравится что можно сделать используя идеологию AS2..
Развивать проект в дальнейшем удобнее не используя методы которые ты предлагаешь.

- 29 Декабрь 2004 22:14

Идеология AS 2.0 IMHO чревата потерей скорости. Так что иметь подобную альтернативу очень даже нужно.

constsi - 29 Декабрь 2004 22:41

2Iv: вкайф!

constsi - 29 Декабрь 2004 22:42

[квоте]А в остальном, мне больше нравится[/квоте]
- дыкэтааа... я жыш не заставляю. эта учебнай матерьял. просто это есть. где-то помогет, где-та нет. соряй за мое новогоднее состоянье.

Iv - 30 Декабрь 2004 0:42

[квоте]Идеология AS 2.0 IMHO чревата потерей скорости[/квоте]
- любая идеология чревата :). А тем более AS2 %).
Шутки шутками, но по ходу дела приходится со временем делать выбор: либо доступ к тонким инструментам либо... даже затрудняюсь назвать преимущества AS2.
Какие могут быть преимущества у одного языка перед другим, если отличие только в кастрации возможностей первого?
С таким же успехом можно создать язык, в котором компилятор будет ругаться на все команды кроме gotoAndStop. Найди преимущества перед AS1.

С моей точки зрения, существует грань, большие/малые проекты. AS2 скорей оправдан в больших, но совершенно не факт.
Причина:
В AS2 предполагается, что любой созданный класс идеален - это А. И что траффик юзверя неограничен - это Б.
В противном случае бесконечная череда инклудов приводит к практической невозможности нахождения ошибок. Ага, при том, что часть классов (далеко не идеальных) поставляется без исходного кода.

Огромная армия останавливается из-за болезни прапорщика. Поезд слетает с рельсов из-за того, что подушка у одного из пассажиров лежит не на месте. Ракета взрывается на взлете из-за отсутствия носового платка у одного из техников.

Я против жесткой взаимосвязи всего и вся в проекте. Каждый элемент должен быть максимально изолирован от всех. Болезнь прапорщика не должна влиять на доставку боеприпасов. Подушка пассажира лежит не там, но от этого никто не слетает с рельсов. Про ракету сами придумайте.

К сожалению, идеология иерархии классов AS2 (скорее даже идеологии компонентов 2004), их взаимозависимости, не является для меня примером того, как надо программить.
НО
Я никоим образом не агитирую за AS1 или AS2. В итоге этот выбор программера зависит от многих факторов, часто далеких от собственно оптимизации скрипта. И ничего тут не поделать.

Я накропал статью. Статья собственно предназначалась одному человеку: Ghokle, который задал вопрос на форуме flasher.ru вот он:
http://www.flasher.ru/forum/showthread.php?s=f59ae0d16c5183ae98e90d259ba8095a&postid=426882#post426882
Всё остальное - побочные последствия.
Стоит машина в гараже. Стоит себе есть не просит. Надо - сел, поехал. Не надо - ну и шут с ним.
Так же и статья. Кому-то позарез. А кому-то в ... не нужна. Нормально.

Iv - 30 Декабрь 2004 1:53

2IV: Respect

Yurii - 30 Декабрь 2004 9:56

Отгадки ;)
- Болезнь прапорщика останавливает армию (прапор является носителем вируса Эбола)
- Поезд сходит с рельс, потому что подушка одного из пассажиров лежит не на месте (подушка упала на пол, проходивший мимо проводник споткнулся и падая ухватился за стоп-кран. От резкого рывка машинист ударился головой и потерял сознание. Далее неуправляемый поезд мчался до первого опасного участка, где и произошла трагедия..)
- Ракета взрывается при взлете, потому что у одного из техников нет носового платка (он обронил свой платок в топливный распределитель)

- AS2 позволяет при компиляции контролировать типы данных (больные прапоры не будут допущены в казармы).
- AS2 позволяет при компиляции контролировать classpath (ваши подушки будут лежать там, где им положено. Бардак в поезде не нужен).
- AS2 позволяет при компиляции контролировать наличие у класса вызываемых методов и свойств. (Напомнит, технику, что при рефакторинге (копипастовом например) потерян платок. Не факт, конечно что он найдет, где его обронил, но.. ;)

В общем то я согласен, что AS1 является более гибким, потому что по отношению к AS2 он является языком более низкого уровня. Впрочем, языки высокого уровня не создавали бы, если бы у них не было преимуществ.

Мелкие вещи гораздо удобнее и быстрее кодить в AS1 (я и сам мелкие проекты так делаю). Однако, в больших системах компилятор AS2 сильно помогает, отсекая большинство ошибок на этапе разработки.

Fix - 30 Декабрь 2004 10:43

это ты круто замутил с носовым платком. в топливный распределитель его пихнул... хехе.

я с тобой согласен в последнем абзаце. более того, не противопоставляю AS1 и AS2. хороша ложка к обеду - вот мое мнение.

я немного о другом:
[квоте]К сожалению, идеология иерархии классов AS2 (скорее даже идеологии компонентов 2004), их взаимозависимости, не является для меня примером того, как надо программить. [/квоте]

Iv - 2 Январь 2005 13:51

существование mtasc - весомый аргумент для перехода на AS2

- 9 Апрель 2005 0:52



Подписаться на новости (RSS)




Примечания:
Статус документа
: в процессе
   2002-2009 Производство: Ростислав Сирык · О проекте · Подписка на новости (RSS)