![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
Регистрация: Mar 2013
Сообщений: 290
|
Хотелось задать несколько нуб-вопросов общего плана.
1. Каковы отличия кода мувиклипа, находящегося внутри его таймлайна, от кода, который находится в классе этого мувиклипа? (получаемого по Properties > Export for Action Script, насколько я понимаю, других способов создания класса мувиклипа нет). Я конешно подозреваю, что второй путь более правильный, но почему это так обьяснить не смогу. 2. Нужно ли стремится к тому, чтобы код таймлайна мувиклипа был вообще пустым, а код всегда находился в коде класса? И если да, то что это дает, кроме "мой код выглядит профессионально, я крутой". Может ли быть так, что на практике оптимальнее всего использовать связку "код класса" + "код таймлайна". 3. Является ли код класса мувиклипа таким же глобальным как и код класса DocumentClass всего флэш-проекта? Является ли такой код просто "удобным размещением в отдельном месте" (то есть он с таким же успехом мог бы находится и в DocumentClass.) 4. Предположим, есть два мувиклипа, и один вложен в другой. И у каждого есть свой код класса. Являются ли такие коды одинаково публичными для всего преложения, или код вложенного мувиклипа, как бы "более локален", и обращение к нему должно быть специфическим. |
|
|||||
|
Цитата:
Цитата:
В тоже время в самом IDE удобно расставлять элементы, особенно для случая с играми. Вот здесь как раз имеет большой смысл использовать графику на сцене. Цитата:
Цитата:
PS: Для того что бы понять преимущества кода в классах вам нужно просто попробовать поиспользовать какой-нибдуь другой редаткрор кода кроме FlashIDE: FlashDevelop, FlashBuilder, IntellageIdea ...
__________________
... |
|
|||||
|
Регистрация: Mar 2013
Сообщений: 290
|
Спасибо, Александр.
Я, разумеется, еще не могу понять ваши ответы в полной мере, но зато теперь есть некоторые общие ориентиры. |
|
|||||
|
СЛовом при переходе с кода во фреймах на ООП чаще всего у людей появляется вопрос как получить доступ к экземплярам объектов.
И самое просто решение для начала в повесить MainClass статическое свойство ссылающееся на единственный экземпляр этого класса. package { import flash.display.Sprite; public class MainClass extends Sprite { public static var instance:MainClass; public function MainClass () { super(); instance = this; trace (this); }; } } По сути это и есть недооформленый Синглетон. В дооформленных видах он код следит за тем что бы экземпляр этого класса создавался единственный раз, вместо публичной переменной используется геттер, но не буду приводить его что бы не путать. ![]()
__________________
... |
|
|||||
|
Александр: Это типа замена _root ?
![]()
__________________
adobe AS3 manual |
|
|||||
|
Цитата:
![]() Это просто для постепенного перехода пишущих код во фреймах на классы. И этот способ как перестарховка от искущения вернуться на старую идеологию и начать писать вместе с root всякие parent.parent И вообще отказаться от отождествления иерархии класов с иерархией вложенности DisplayObject ![]()
__________________
... |
|
|||||
|
Ну и в итоге, из любого класса, у них будет доступ к _root
![]() И вместо того чтобы использовать событийную модель, или композицию, можно ведь обращаться напрямую, удобно)
__________________
adobe AS3 manual |
|
|||||
|
Цитата:
![]()
__________________
... |
![]() |
![]() |
Часовой пояс GMT +4, время: 16:09. |
|
|
« Предыдущая тема | Следующая тема » |
| Теги |
| иерархия , класс , мувиклип , таймлайн |
|
|