13 октября 2008. Почему размещение кода в кадрах оправдано
Речь, разумеется идет об ActionScript 3.0. После его появления многие программисты стали пренебрежительно относиться к коду в кадрах мувиклипов. А зря. Не стоит так сужать свой кругозор до уровня обычных Java-кодеров.
Я не говорю о том, что размещать код только в кадрах хорошо. Нет, это, все-таки, пережитки AS2. Но использование одного-двух кадров MainTimeLine вместо конструктора DocumentClass’а вполне оправданно, как минимум, по двум причинам:
- Прелоадер. Помните, в какой геморрой превращается создание прелоадера с помощью DocumentClass? Экспорт во второй кадр или внешний swf-прелоадер… всего этого можно избежать, если вместо кода в конструкторе DocumentClass использовать код в первых двух кадрах MainTimeLine.
- Размещение клипов. В некоторых проектах не требуется полной динамичности происходящего на сцене, когда заранее не известно сколько объектов будет в кадре, где какой будет находиться и что выполнять. Иногда требуется просто разместить элементы интерфейса (к примеру, сайта или простенькой игры) прямо на сцене в IDE. В этом случае, описывать кодом все, находящееся на сцене удобнее, все-таки, в кадре. Хотя никто не мешает вставить потом код в DocumentClass.
Ну, и потом, не стоит забывать, что все, что пишется в кадрах главной монтажной линейки, на самом деле, является методами (условно можно назвать их frame1(), frame2()), которые вызываются из конструктора главного класса посредством метода addFrameScript() (нет, можете не искать его в документации). Попробуйте как-нибудь сделать флэшку с кодом в первом кадре и просмотреть ее код с помощью какого-либо из доступных декомпиляторов.
Тэги: as3