Поскольку ActionScript является языком программирования, для его изучения необходимо понимание ряда основных концепций, используемых при создании компьютерных программ.
Какие функции выполняют компьютерные программы
Прежде всего необходимо понять, что представляют собой компьютерные программы и какие функции они выполняют. Существует два основных свойства компьютерной программы.
-
Программа представляет собой серию инструкций или шагов, которые должен выполнить компьютер.
-
Каждый шаг в конечном счете приводит к управлению определенной порцией информации или данных.
В общем смысле, компьютерная программа — это пошаговые инструкции, которые задаются компьютеру оператором и которые компьютер выполняет одну за другой. Каждое отдельное указание называется
инструкцией
. В среде ActionScript после каждого оператора следует точка с запятой.
В сущности, все функции отдельной инструкции программы сводятся к управлению несколькими битами информации, хранящимися в памяти компьютера. Простым примером является сложение двух чисел и сохранение результата в памяти компьютера. Более сложным примером является рисование прямоугольника на экране компьютера и создание программы перемещения этого прямоугольника в другое место экрана. Определенная информация о прямоугольнике сохраняется в памяти компьютера: координаты x, y расположения прямоугольника, ширина и длина сторон, цвет и так далее. Каждый бит этой информации хранится в памяти компьютера. Алгоритм программы перемещения прямоугольника в другое место на экране включает такие действия, как присвоение координате x значения 200, а координате y — значения 150. Другими словами, необходимо присвоить новые значения координатам x и y. Компьютер выполняет некоторые скрытые от пользователя операции с этими данными для фактического преобразования этих чисел в изображение, показанное на экране компьютера. Однако на базовом уровне достаточно знать то, что процесс перемещения прямоугольника на экране включает только изменение битов данных в памяти компьютера.
Переменные и постоянные
В основном процесс программирования включает изменение только части данных в памяти компьютера. Следовательно, важно иметь способ представления части данных в программе.
Переменная
является именем, которое представляет значение в памяти компьютера. При записи операторов для управления значениями имя переменной записывается вместо значения. Когда компьютер обнаруживает имя переменной в программе, он обращается к своей памяти и использует то значение, которое там находится. Например, если есть две переменные с именами
value1
(значение 1) и
value2
(значение 2), каждая из которых содержит число, тогда для сложения этих чисел можно написать следующую инструкцию:
value1 + value2
При выполнении этих шагов на практике компьютер находит значения для каждой переменной и складывает их.
В ActionScript 3.0 переменная фактически состоит из трех различных частей:
-
имени переменной
-
типа данных, которые могут быть сохранены в переменной
-
фактического значения, сохраненного в памяти компьютера
Было рассмотрено, как компьютер использует имя в качестве местозаполнителя значения. Столь же важен и тип данных. При создании переменной в среде ActionScript задается определенный тип данных, предназначенный для хранения. С этого момента при выполнении программных команд в переменной могут сохраняться значения только этого типа данных. Можно управлять значением с использованием определенных характеристик, связанных с этим типом данных. Для создания переменной в ActionScript (этот процесс называется также объявлением или
заданием
переменной) используется инструкция
var
:
var value1:Number;
В этом примере определены команды создания переменной
value1
, в которой могут храниться только значения с типом Number. (Number — это определенный тип данных в среде ActionScript.) Можно также сохранить значение прямо в переменной:
var value2:Number = 17;
Adobe Flash Professional
Во Flash Professional есть другой способ задания переменной. При размещении символа фрагмента ролика, символа кнопки или текстового поля в рабочей области можно задать для них имя экземпляра в инспекторе свойств. В скрытом для пользователя режиме приложение Flash Professional создает переменную с именем, которое совпадает с именем экземпляра. Это имя можно использовать в коде ActionScript для представления этого элемента в рабочей области. Предположим, к примеру, что в рабочей области существует символ фрагмента ролика и вы присваиваете ему имя экземпляра
rocketShip
. При использовании переменной
rocketShip
в коде ActionScript вы фактически управляете фрагментом ролика.
Константа
аналогична переменной. Это имя, которое представляет значение с заданным типом данных в компьютерной памяти. Разница состоит в том, что для постоянной значение присваивается только один раз во время выполнения приложения ActionScript. Если постоянной присвоено значение, оно больше не изменяется в приложении. Синтаксис для определения константы почти совпадает с синтаксисом для определения переменной. Единственным отличием является то, что ключевое слово
const
используется вместо ключевого слова
var
:
const SALES_TAX_RATE:Number = 0.07;
Константа используется для определения значения, которое задействовано на многих стадиях проекта и которое не изменяется при нормальных обстоятельствах. Использование постоянных вместо литеральных значений делает код более удобочитаемым. К примеру, рассмотрим две версии одного кода. Один код используется для умножения цены на значение переменной
SALES_TAX_RATE
. Другой код используется для умножения цены на
0,07
. Версия, в которой используется константа
SALES_TAX_RATE
, более проста в понимании. Кроме того, предположим, что значение, заданное константой, изменяется. Если для представления значения в проекте используется константа, можно изменить значение в одном месте (объявление константы). Напротив, потребуется изменить его в различных местах при использовании запрограммированных значений литералов.
Типы данных
В ActionScript существует много типов данных, которые можно использовать при создании переменных. Некоторые из этих типов данных считаются простыми или фундаментальными типами данных:
-
Строки: текстовые значения, такие как имя или текст главы книги
-
Числовые: ActionScript 3.0 включает три специфических типа числовых данных:
-
Number: любые целые или дробные числовые значения
-
int: целые числа без дробей
-
uint: беззнаковые (неотрицательные) целые числа
-
Логические: значения типа «истинно — ложно», такие как состояния выключателя или равенство или неравенство двух значений
Простые типы данных представляют единичные порции информации: например, одно число или единичный текст. Однако большинство типов данных, определенных в среде ActionScript, являются комплексными типами данных. Они представляют набор значений в одном контейнере. Например, переменная с типом данных Date (Дата) представляет одно значение (момент времени). Тем не менее, значение даты включает несколько значений: день, месяц, год, часы, минуты, секунды и т. д., все из которых являются отдельными числами. Обычно дата считается единичным значением, и с ней можно работать как с единичным значением путем создания переменной Date. Однако в компьютере дата рассматривается как группа из нескольких значений, которые совместно определяют одну дату.
Большинство встроенных типов данных, так же как и большинство типов данных, задаваемых программистами, являются комплексными. Некоторые из комплексных типов данных, возможно, уже вам знакомы:
-
MovieClip: символ фрагмента ролика
-
TextField: динамическое или вводимое текстовое поле
-
SimpleButton: символ кнопки
-
Date: информация о единичном моменте времени (дата и время)
Двумя широко распространенными синонимами для обозначения типа данных являются класс и объект.
Класс
является просто определением типа данных. Он равнозначен шаблону всех объектов в типе данных, как в выражении «все переменные типа данных "Пример" имеют характеристики А, Б и В».
Объект
, с другой стороны, является всего лишь фактическим экземпляром класса. Например, переменную с типом данных MovieClip можно описать как объект MovieClip. Ниже одна и та же мысль выражена различными словами.
-
Типом данных переменной
myVariable
является Number (число).
-
Переменная
myVariable
является экземпляром Number.
-
Переменная
myVariable
является объектом Number.
-
Переменная
myVariable
является экземпляром класса Number.
|
|
|