15 помилок новачка у Flash - форум
#1 mexlis
. Рівність за умов позначається подвійною рівністю, тому код if (i=1)<> працювати не буде. Правильний варіант коду if (i==1)<> Це помилка багатьох програмістів-початківців.
2. Коли команди пишуться вручну, дуже важливо дотримуватися регістру. Регістр у Flash'і має значення! Тому команда gotoandplay() не працюватиме, правильний варіант: gotoAndPlay().
3. Коментарі. Коментарі в програмному коді вводяться знаком подвійного слеша //, але діють лише один рядок, не можна про це забувати. На кожному рядку слід повторювати цей символ.
4. Команда removeMovieClip() видаляє лише ті мувікліпи, які не були створені вручну, тобто ті, які з'явилися в результаті використання команд duplicateMovieClip() та attachMovie().
5. Динамічне текстове поле. Зміст поля Var не є назвою динамічного поля. Щоб звернутися до текстового поля, потрібно ввести ім'я в його instance name. Використовувати програмний код потрібно з визначенням типу змінної. Наприклад, назва поля mytext. Якщо ми хочемо, щоб спочатку в полі mytext було написано "Мій текст". потрібно написати mytext.text = Мій текст. Це один із способів, можна також у полі Var задати змінну, наприклад myvar, і в кадрі написати myvar = "Мій текст".
7. Розташування коду. Дуже часто новачки воліють розташовувати код безпосередньо на мувікліпах і кнопках, але разом з тим перша ознака професіоналізму - розташування всього коду в одному кадрі. Дійсно, розташовуючи код в одному кадрі, стають очевидними всі помилки і недоліки коду, все виправляється набагато швидше, ніж якщо ви шукали свій код, розкиданий по різних місцях.
8. Звернення до кнопок.Багато хто намагається звернутися до кнопок, але це абсолютно марно, тому що кнопки на це не реагують. Що ж робити? Як же бути? Потрібно з мувікліпу зробити кнопку та звертатися до мувікліпу як до кнопки. Для цього потрібно використовувати такі функції, як onRelease, onRollOver.
9. Зловживання onEnterFrame. Ця команда досить сильно вантажить процесор і цим гальмує роботу комп'ютера, оскільки ця команда виконує ті чи інші дії, симулюючи програвання цього кадру знову і знову. Тобто, якщо у вас fps (кадри в секунду) дорівнює 30, то перевірка проводиться кожні 30 мілісекунд, а це дуже істотно для процесора.
11. Метод attachMovie(). Цей метод переносить програмно мувікліп із бібліотеки на сцену. У новачків часто виникає проблема з Linkage - ім'я, яке слід ввести в команді attachMovie(). Програмисти-початківці вважають, що це ім'я та ім'я мувікліпу - це одне й те саме. Смію вас засмутити, це зовсім різні речі. У команду attachMovie() необхідно ввести ім'я Linkage мувікліпу. Щоб його задати, потрібно виділити мувікліп у бібліотеці та вибрати Права кнопка - Linkage (Зв'язок), ввести ім'я та відзначити галочками пункти Експорт в ActionScript та експорт у перший кадр. Тоді все працюватиме.
12. Різні типи змінних. Часто плутаються числові та текстові змінні, які виглядають як перші. Наприклад, якщо ви за допомогою charAt() дізнаєтеся номер мувікліпу для наступних дій, не забудьте після цього використовувати команду Number(), щоб змінити тип змінної на числовий. Через це може працювати весь програмний код ролика.
13. Коментарі. Іноді корисно їх використовувати, щоб не загубитися у коді. Як їх вводити ми розглянули в пункті 3, зараз розглянемо, у яких випадках вони потрібні.Наприклад, у вас є 4 умови вкладених одна в одну. Уявляєте, скільки буде дужок, що закривають? Якщо використовуються такі умовні оператори, як if, else, if else. Не менше 10-15 дужок.
14. Команда delete. Дуже багато програмістів просто не знають про її існування і, відповідно, ніколи не використовують, а дарма. Ця команда дозволяє видаляти різні функції, які вже не знадобляться. Наприклад, функція onEnterFrame. Як було зазначено вище, вона витрачає багато ресурсів процесора. А якщо їх дещо. Якщо якісь із них уже не потрібні, то їх можна видалити за допомогою цієї команди. Синтаксис дуже простий: delete this.onEnterFrame.
15. Дуже поширена проблема зі збереженням будь-яких змінних у файл. Flash підтримує цю можливість це недокументована команда. Зберігає дані в спеціальний файл (не текстовий, а свого дозволу) і звідти ж зчитує їх. Як використовувати SharedObject() (а саме так називається ця команда) ми розглянемо в одній із найближчих статей. Можна лише сказати, що там чимало різних нюансів. Багато хто, хто навіть знає про існування цієї команди, не може використовувати її коректно.
Ми розглянули 15 основних, найпоширеніших помилок у Flash-програмістів. Звичайно, є і багато інших, але ці найпоширеніші. Вчитися все-таки краще на чужих помилках, принаймні швидше.