ActionScript

Technology
12 hours ago
8
4
2
Avatar
Author
Albert Flores

ActionScript je programovací jazyk vyvinutý společností Adobe Systems pro vývoj interaktivních webových stránek a multimediálních aplikací. Jazyk je založen na ECMAScriptu, což je standard skriptovacího jazyka. První verze, ActionScript 1.0, byla vydaná v roce 1998. Další verze, jako ActionScript 2.0 a 3.0, přidaly nové funkce a vylepšení. Vývoj ActionScriptu je prováděný výhradně ve vývojovém prostředí Adobe Flash, které umožňuje tvorbu animací, her a webových aplikací. ActionScript se dá použít k animaci objektů, interakci s uživatelem a manipulaci s daty. Jazyk podporuje objektově orientované programování a obsahuje mnoho vestavěných tříd a metod. ActionScript 3.0, který byl uveden na trh v roce 2006, přinesl výrazné vylepšení výkonu a rozšířené podpory pro práci s videem a zvukem. Tato verze také zavedla nový model událostí a komunikaci mezi objekty. V roce 2011 bylo oznámeno, že Adobe Flash vyvinutý pro mobilní zařízení již nebude podporovat Flash Player a tím i ActionScript, což způsobilo úpadek vývoje jazyka. ActionScript se stále používá v některých webových aplikacích, přestože se jeho popularita snížila s příchodem moderních technologií, jako je HTML5 a JavaScript.

ActionScript (zkratka AS) je objektově orientovaný programovací jazyk pro aplikace vyvíjené pomocí Adobe Flash, případně dalších vývojářských nástrojů, využívajících stejného datového formátu. Pomocí ActionScriptu se dají vytvářet komplexní internetové aplikace nebo i animace. ActionScript vychází ze standardizované verze jazyka JavaScript, nazvané ECMAScript.

Používání Flashe k vytváření webů neznamená používání ActionScriptu. Pokud ovšem bude třeba použít více interaktivity např. +more různé akce a události po klepnutí na myš, tak už je použití ActionScriptu nutné. Aktuální verze ActionScriptu je verze 3 (podporovaná Flash Playerem 9) a 2 (podporovaná Flash Playerem od verze 6). Verze AS 2. 0 s jeho rozšířeními pro Flash verze 8 je zdokumentována na stránkách firmy Adobe.

Historie

ActionScript začal jako skriptovací jazyk pro program Macromedia Flash (nyní ve vlastnictví společnosti Adobe Systems). První tři verze programu Flash poskytovaly velmi omezené možnosti. +more Vývojáři Flashe pro používání brzy připojili jednoduchý příkaz, nazvaný action, který lze připojit k tlačítku nebo k rámu. Soubor akcí byl rozšířen na základní navigaci kontroly s příkazy jako play, stop, getURL, goto a hru.

S vydáním Flash 4 v roce 1999 byl tento soubor akcí rozšiřován do skriptovacího jazyka. Nové příkazy představené ve Flash 4 zahrnovaly proměnné, výrazy, operátory, podmíněné příkazy a smyčky.

Verze ActionScriptu

ActionScript 1. 0: Verze 1. +more0 je nejjednodušší forma ActionScriptu a stále se používá v některých verzích přehrávače Flash Lite Player. ActionScript 1. 0 a 2. 0 mohou existovat dohromady v jednom souboru FLA.

ActionScript 2. 0: Verze 2. +more0 je na učení jednodušší než ActionScript 3. Přestože Flash Player provádí zkompilovaný kód ActionScript 2. 0 pomaleji než zkompilovaný kód ActionScript 3. 0, je ActionScript 2. 0 stále dobrý pro mnoho druhů projektů, které nejsou výpočetně náročné, například pro vzhledově orientovaný obsah. ActionScript 2. 0 je také odvozen od specifikace ECMAScript, které však plně nevyhovuje.

ActionScript 3. 0: Verze 3. +more0 se provádí několikrát rychleji, než předchozí verze. Tato verze vyžaduje větší znalosti objektově orientovaného programování, než jiné verze ActionScriptu. ActionScript 3. 0 plně vyhovuje specifikaci ECMAScript, nabízí lepší zpracování XML, vylepšený model událostí a vylepšenou architekturu pro práci s obrazovkovými elementy. Nově také disponuje třídou ByteArray, která pracuje s daty na bytové úrovni. Díky této skutečnosti, lze nyní používat ActionScript 3. 0 k vytváření obrázků a jejich následnému ukládání v různých formátech pomocí několika tříd. Pomocí třídy ByteArray lze vytvořit známé hashovací algoritmy, jako MD5 nebo SHA1. Ve vývoji jsou také projekty vytvářející PDF nebo ZIP soubory.

Verze přehrávače

;Flash Player 2: První verze s podporou skriptů. Přidány příkazy gotoAndPlay, gotoAndStop, nextFrame a nextScene pro kontrolu časové osy.

Flash Player 3:Rozšířená podpora skriptů a schopnost načítat externí SWF (loadMovie).

Flash Player 4: První verze přehrávače s plnou podporou skriptů (Actions). Kódování založené na Flash syntaxi s podporou smyček, podmínek, proměnných a dalších základních jazykových konstruktů.

Flash Player 5: Obsahuje první verzi Actionscriptu. Využívá programování založené na prototypech ECMAScript a umožňuje plné procedurální programování a objektově orientované programování.

Flash Player 6: Přidán model zpracování událostí, ovládací prvky dostupnosti, a podpora pro switch. První verze s podporou pro AMF a RTMP protokoly, které povolují přehrávání zvuku/videa na vyžádání.

Flash Player 7: Doplňky obsahující CSS stylování pro text a podporu pro ActionScript 2. 0, programovací jazyk založený na ECMAScript 4 Netscape Propsal s dědičností tříd (class-based). +more ActionScript 2. 0 lze rekompilovat na bajt-kód ActionScript 1. 0 pro použití ve Flash Player 6.

Flash Player 8: Ještě více rozšiřuje Actionscript 1. 0/ActionScript 2. +more0 přidáním knihoven tříd s API pro manipulaci s bitmapami za běhu programu, načítání souborů a live filtry jako rozostření a vrhání stínů.

Flash Player 9 (8. 5): Přidán ActionScript 3. +more0 s příchodem nové VM (Virtual Machine) zvané AVM2 (ActionScript Virtual Machine 2), které spolupracuje s předchozí verzí AVM1 nutnou pro podporu dřívějšího obsahu. Přehrávač obsahuje nový JIT kompilátor a hlavním cílem celkový nárůst výkonu. Je zde implementována podpora pro binary sockets, EAX XML analýzu, full-screen mód a Regular Expressions. První vydání přehrávače pod názvem Adobe Flash Player.

Flash Player 10 (Astro): Přidány základní 3D funkce jako rotace v X, Y a Z a 3D kreslící rozhraní API. Schopnost vytvářet vlastní filtry s využitím Adobe Pixel Bender. +more Mnohé vizuální procesy jsou nyní přeneseny na GPU s následným znatelným snížením renderovacích časů pro jednotlivé snímky. Výsledkem je rychlejší přehrávání a to speciálně s H. 264 videem. Nově přidané zvukové API umožňuje poprvé tvorbu vlastních zvuků ve flashi.

Datové typy

ActionScript se primárně skládá z elementárních a základních datových typů, které jsou následně použity k vytváření dalších datových typů. Datové typy se velmi podobají typům v jazyce Java. +more ActionScript 3. 0 byl kompletně přebudován, a proto jsou datové typy a jejich dědičnost jiné.

ActionScript 2.0 top level datové typy

String - seznam znaků jako například „Hello World“ * Number - jakákoli numerická hodnota * Boolean - jednoduchý datový typ nabývající hodnotu True a False * Object - z tohoto datového typu dědí všechny komplexní datové typy; umožňuje seskupování metod, funkcí, parametrů a ostatních objektů

ActionScript 2.0 komplexní datové typy

Komplexní datové typy jsou složitější a skládají se z mnoha základních datových typů. Jsou náročnější na procesor a paměť. V AS 2.0 jsou následující:

* MovieClip - datový typ pro reprezentaci vizuálních objektů * TextField - jednoduché dynamické nebo vstupní textové pole. Dědí vlastnosti MovieClipu * Button - jednoduché tlačítko se 4 snímky: Up, Over, Down a Hit; dědí vlastnosti MovieClipu * Date - umožňuje získat informaci o konkrétním bodě v čase * Array - pole pro skladování dat * XML - objekt jazyka XML * XMLNode - uzel XML * LoadVars - objekt pro uskladnění a posílání proměnných metodou HTTP POST a HTTP GET * Sound - zvukový objekt * NetStream * NetConnection * MovieClipLoader - objekt pro načítání videoklipů * EventListener - objekt zpracovávající události jiných objektů jako například myši

ActionScript 3.0 top level datové typy

Boolean - jednoduchý datový typ nabývající hodnotu True a False * Int - 32bitová číselná hodnota v rozmezí -2. 147. +more483. 648 až 2. 147. 483. 648 * Null - datový typ obsahující pouze hodnotu null, což je implicitní hodnota pro datový typ String a všechny další, které definují komplexní datové typy včetně třídy Object * Number - může reprezentovat integer (viz int), unsigned integer (kladný int) a čísla s plovoucí čárkou; používá 64bitový formát * String - reprezentuje sekvenci 16bitových znaků; interně je uložen jako Unicode znaky využívající kódování UTF-16; předchozí verze Flash používají UTF-8 * Uint - 32bitový číselný datový typ v rozmezí od 0 do 4. 294. 967. 295 * Void - obsahuje pouze jednu hodnotu undefined; v předchozích verzích je undefined výchozí hodnotou u některých datových typů.

ActionScript 3.0 komplexní datové typy

Object - je definován třídou Object, která slouží jako základní třída pro definici všech tříd v ActionScriptu; Object je v podstatě použit jako asociativní pole, které obsahuje dvojice klíč-hodnota, kde klíč je string a hodnota může být jakéhokoli typu * Array - obsahuje seznam dat; data mohou být uložena jako jakýkoli typ a poté přepsáno jako původní datový typ * Vector - varianta pole použitelná pouze Flash Playerem 10 nebo vyšším; Vectory jsou typově bezpečné jako pole, ale zpracovávají se rychleji * Dictionary - varianta objektu, která může obsahovat klíče kterýchkoli dat (klíče jsou definované jako String) * MovieClip - datový typ pro reprezentaci vizuálních objektů * Bitmap - neanimovatelný vizuální objekt * Shape - neanimovatelný vektorový vizuální objekt * ByteArray - obsahuje pole binárních bajtových dat * TextField - jednoduché dynamické nebo vstupní textové pole; dědí vlastnosti třídy InteractiveObject * SimpleButton - jednoduché tlačítko se čtyřmi akcemi: Up, Over, Down a Hit * Date - datový typ zpřístupňující aktuální systémový čas * Error - generovaný chybový objekt, který umožňuje nahlášení chyb za běhu programu (exceptions) * Function - základní třída pro všechny definice metod * RegExp - regulární vyjádření objektu pro řetězec (String) * Video - objekt pro přehrávání videa podporující přímý nebo přenášený transport; od verze Flash Playeru 9. +more115. 0 je podporováno i H. 264 (MP4 high-definition video formát) společně s původní FLV videem * XML - revidovaný XML objekt založený na standardu E4C; uzly a atributy jsou zpřístupněny jinak než v ActionScripti 2. 0 * XMLList - objekt typu pole pro uložení různého obsahu z třídy XML.

Externí skripty

Flash umožňuje ukládat skripty i do externích souborů mimo . fla. +more Externí skripty se připojují automaticky. Když se animace exportuje, zkopírují se skripty do souboru . swf.

Reference

Externí odkazy

https://web. archive. +moreorg/web/20060112023220/http://www. flashmedia. cz/forum/ - fórum * http://diskuse. jakpsatweb. cz/index. php. action=vtopic&forum=21 - fórum * https://web. archive. org/web/20020929015833/http://www. flash. cz/ - stránky o flashi, Flexu, Adobe AIR a dalších příbuzných tématech] * https://web. archive. org/web/20170608173948/http://actionscript. org/ - Fórum s tutoriály (anglicky) * https://web. archive. org/web/20161107110658/http://actionscript. com/ stránky o AS a fórum s užitečnými informacemi (anglicky) * http://ivankuckir. blogspot. com/2010/10/1-rychly-uvod-do-adobe-flash-as3. html průvodce pro snazší přechod z ostatních jazyků na AS3 (v češtině) * http://ivankuckir. blogspot. com/2010/11/2-rychly-uvod-flash-oop-teorie. html úvod do OOP v AS3 (v češtině).

Kategorie:Programovací jazyky Kategorie:JavaScript

5 min read
Share this post:
Like it 8

Leave a Comment

Please, enter your name.
Please, provide a valid email address.
Please, enter your comment.
Enjoy this post? Join Cesko.wiki
Don’t forget to share it
Top