Вторник, 23.04.2024
Ukrainiancontet.at.ua
Меню сайта
Категории раздела
Програмування [35]
Мови веб-програмування [5]
О компании [0]
Новости игры
Статистика

Онлайн всего: 3
Гостей: 3
Пользователей: 0
Главная » 2015 » Октябрь » 26 » ActionScript
20:44
ActionScript
ActionScript — об'єктно-орієнтована мова програмування, один з діалектів ECMAScript, який додає інтерактивність, обробку даних та багато іншого вмісту Flash-додатків. ActionScript виконується віртуальною машиною (ActionScript Virtual Machine), яка є складовою частиною Flash Player. ActionScript компілюється в байт-код, який включається в SWF-файл.

SWF-файли виконуються Flash Player-му. Flash Player існує у вигляді плагіна до веб-браузера, а також як самостійне виконуваний додаток (standalone). У другому випадку можливе створення виконуваних exe-файлів (projector), коли додаток Flash Player об'єднується з swf-файл за аналогією з SFX.

З допомогою ActionScript можна створювати інтерактивні мультимедіа-додатки, ігри, веб-сайти та багато іншого.

ActionScript — відкритий мова програмування, його специфікація знаходиться у відкритому доступі на сайті Adobe[]. Компілятор (як частина Apache Flex) і відкрита віртуальна машина (Tamarin) є відкритим програмним забезпеченням.

ActionScript як мову з'явився з виходом 5-й версії Macromedia Flash, яка стала першої програмованої на ActionScript середовищем. Перший реліз мови називався ActionScript 1.0. 6-я версія Flash (MX) також використовувала ActionScript 1.0. У 2004 році компанія Macromedia представила нову версію ActionScript 2.0 разом з виходом Flash 7 (MX 2004), в якій було введено чітке визначення типів, а також програмування, засноване на класах. Тобто з'явилися нові ключові слова:
class (клас),
interface (інтерфейс),
extends (установка спадкування)
модифікатори доступу: private, public;
та інші.

Також Macromedia була випущена модифікація мови Flash Lite для програмування під мобільні телефони.

ActionScript 1.0 є прототипным мовою програмування. Тобто він цілком реалізує всі три принципи об'єктно-орієнтованого програмування.

ActionScript 2.0 є надбудовою над ActionScript 1.0. Перевірка типів і робота з ієрархією класів здійснюється під час компіляції, яка закінчується генерацією байткода, аналогічного ActionScript 1.0.

У 2006 році вийшов ActionScript 3.0 в середовищі програмування Adobe Flex, а пізніше в Adobe Flash 9.

ActionScript 3.0 являє, порівняно з ActionScript 2.0, якісна зміна, він використовує нову віртуальну машину AVM 2.0 і дає замість колишнього формального синтаксису класів даний класове (class-based) Об'єктно-орієнтоване програмування. ActionScript 3.0 забезпечує зростання продуктивності, порівняно з ActionScript 1.0/2.0, до 700 разів (це лише обробка інструкцій, не зачіпаючи графіком). ActionScript 3.0 дозволяє працювати з бінарними даними, з BitMap (що забезпечує значний приріст продуктивності: до 10000 разів). ActionScript 3.0 по швидкості наблизився до таких мов програмування, як Java і C#. Збільшення продуктивності ґрунтується на динамічній трансляції коду (JIT). Таке збільшення продуктивності можливе лише для деяких типів даних і вимагає особливої організації коду[]. Обсяг коду, як правило збільшується в кілька разів[] (порівняно з AS1)

ActionScript 2.0

Цей код створює нове текстове поле, на глибині(depth) 0, в точці (0, 0) і розміром 100 на 100 пікселів. Параметр text дорівнює рядку «Hello, world». Код повинен бути записаний у вікні action —

frame
createTextField("greet", 0, 0, 0, 100, 100);
greet.text = "Hello world!";


Приклад класу, написаного на AS2. Код повинен зберігатися в окремому .as файлі і розташовуватися в одній папці .fla попередником проекту.

class com.example.Greeter extends MovieClip
{
public function Greeter()
{
}
public function onLoad() :Void
{
var txtHello:TextField = this.createTextField("txtHello", 0, 0, 0, 100, 100);
txtHello.text = "Hello world!";
}
}

ActionScript 3.0

У вихідному коді компилируемом Adobe Flex SDK (AS 3.0):

package {

import flash.display.Sprite;
import flash.text.TextField;

public class HelloWorld extends Sprite {
public function HelloWorld() {
var txtHello:TextField = new TextField();
txtHello.text = "Hello world!";
addChild(txtHello);
}
}
}

MXML

Код, написаний код mxml (розширення XML), який:


<МХ:застосування атрибутів xmlns:МХ="http://www.adobe.com/2006/mxml" префіксом xmlns="*" макет="вертикалі"
creationComplete="initApp()">

<МХ:скрипт>
<![Тип CDATA[
державну функцію initApp():void у
{
// Друкує наша "Здрастуй, світ!" повідомлення "mainTxt".
mainTxt.текст = Закликальником.sayhello ();
}
]]>
</МХ:скрипт>

<МХ:мітка ідентифікатор="назва" властивість fontsize="24" властивість fontstyle="напівжирний" текст="Привіт, світ!" Приклад'/>
<МХ:текстове поле з ID="mainTxt" Ширина="250"/>

</МХ:додатки>

Приклад роботи відладчика. Виводить на екран вихідного будь-які дані, які можливо перетворити на рядок (АС2 і далі):
трасування("Привіт світ!");

ActionScript 3.0 (а точніше Flash Player 9 API — можна сказати, бібліотека, написана на C++) складається з більш ніж 700 класів, організованих у наступні пакети (аналоги просторів імен в C++):Пакет Опис
flash.accessibility класи для підтримки доступу в Flash контенту і додатків.
flash.display основні класи, які Flash Player використовує для виводу зображення на екран.
flash.errors часто використовувані класи обробки помилок.
flash.external містить клас ExternalInterface, який використовується для зв'язку з контейнером Flash player'а.
flash.filters класи для роботи з фільтрами растрових картинок.
flash.geom класи для роботи з геометричними класами, такими як точки, прямокутники і матриці трансформації — для підтримки класу BitmapData і можливості кешування зображень.
flash.media класи для роботи з мультимедіа — наприклад, звуками і відео.
flash.net класи для надсилання та отримання даних по мережі. Наприклад, запити URL і Flash Remoting.
flash.printing класи для виводу на друк вмісту Flash-фільму.
flash.profiler функції, які використовуються для налагодження і профілювання коду.
flash.system класи для доступу до системи на рівні функціональності, такі як безпека, багатомовного змісту і т. д.
flash.text класи для роботи з текстом, його розташуванням, розміром, стилем і розташуванням.
flash.ui класи користувальницького інтерфейсу, такі як класи для роботи з мишею і клавіатурою.
flash.utils додаткові класи, такі як ByteArray для роботи з бінарними даними, Timer для відліку інтервалів часу та ін
flash.xml забезпечує підтримку XML і всі функції для роботи з XML. (Необхідний для підтримки попередніх версій AS)


Також існують mx.* пакети, які складаються з класів, призначених для створення інтерфейсу програми у середовищі Flex і fl.* пакети для середовища Fla

Adobe Flash — Історично перша середа, підтримуюча AS. Починаючи з Flash 5 з'явилася панель ACTIONS», з можливістю редагування коду (AS1). Для Flash 6 був створений AS2. Починаючи з Flash 9 з'явилася підтримка AS3.
Adobe Flash Builder — Середовище розробки для створення RIA додатків для настільного комп'ютера і мобільних пристроїв.
Powerflasher FDT — Середа, визнана досвідченими флеш-програмістами, базується на eclipse — вільної інтегрованому середовищі розробки модульних кроссплатформенних додатків.
FlashDevelop — вільна середовище розробки і редактор, написаний на C#, дозволяє створювати Flash-додатки за допомогою Flash IDE, Flex SDK, MTASC або haxe.
CodeDrive — Середовище розробки і редактор, з досить швидким компілятором, заснована на Microsoft Visual Studio.
SWFTools — Вільний пакет для роботи з swf-файли, пакет включає компілятор ActionScript 3.0 (as3compile) .
Категория: Мови веб-програмування | Просмотров: 460 | Добавил: Adminn | Теги: ActionScript | Рейтинг: 0.0/0
Всего комментариев: 0
avatar
Вход на сайт

Поиск
Интернет
Здоровье
Афиша
Ситуация на восток
Религия
Архив записей
Каталог сайтов Всего.RU
Рейтинг@Mail.ru
Copyright Ukrainiancontet.at.ua © 2024
uCozЯндекс.Метрика