Přeskočit na obsah

ActionScript

Z Wikipedie, otevřené encyklopedie

ActionScript (zkratka AS) je objektově orientovaný programovací jazyk pro aplikace vyvíjené pomocí Macromedia 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ř. 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 zde.

Historie

ActionScript začal jako skriptovací jazyk pro program Macromedia Flash. První tři verze programu Flash poskytovaly velmi omezené možnosti. 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", a "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 .

Časová osa podle 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.(vlase-based). 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.0 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.0 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. Toto je 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. 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.

V tomto článku byl použit překlad textu z článku ActionScript na anglické Wikipedii (číslo revize nebylo určeno)Šablona {{Překlad}} požaduje zadat hodnotu do parametru „revize“!.

Verze actionscriptu

ActionScript 1.0

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

je na učení jednodušší než ActionScript 3.0.[zdroj?] 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, ale nevyhovuje jí úplně.

ActionScript 3.0

se provádí nesmírně rychle.[zdroj?] Tato verze vyžaduje trochu větší znalosti pojmů objektově orientovaného programování než jiné verze ActionScriptu.[zdroj?] 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. Soubory FLA, které používají ActionScript 3.0, nemohou obsahovat starší verze ActionScriptu.


Datové struktury

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ů. Tyto datové typy jsou velmi podobně těm v Javě. ActionScript 3.0 byl kompletně přebudovaný a tudíž datové typy a jejich dědičnost je 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:

Tyto 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ěť. Pro AS 2.0 to 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-mi 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í movie clipů.
  • 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 – Tento datový typ je 32-bitová číselná hodnota v rozmezí -2, 147, 483, 648 a 2, 147, 483, 648
  • Null – Tento datový typ obsahuje pouze hodnotu null. Je to defaultní hodnota pro String datový typ 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. Number datový typ používá 64-bitový formát.
  • String – Tento datový typ reprezentuje sekvenci 16-ti bitových znaků. String je interně uložen jako Unicode znaky využívající UTF – 16 formát. Předchozí verze Flash používají UTF-8.
  • uint – 32 bitový číselný datový typ v rozmezí od 0 do 4,294,967,295.
  • void – Tento datový typ obsahuje pouze jednu hodnotu a to undefined. V předchozích verzích je undefined výchozí hodnotu u některých datových typů.


ActionScript 3.0 komplexní datové typy:

  • Object – Object datový typ je definován třídou Object. Tato třída 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 ale použitelná pouze Flash Playerem 10 nebo vyšším. Vectory jsou typově bezpečné jako pole, ale zpracovávají se rychleji.
  • Dictionary – Je to 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 MovieClipu.
  • SimpleButton - Jednoduché tlačítko se 4-mi snímky: 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.0.115.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.

V tomto článku byl použit překlad textu z článku ActionScript na anglické Wikipedii (číslo revize nebylo určeno)Šablona {{Překlad}} požaduje zadat hodnotu do parametru „revize“!.

Externí skripty

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

Externí odkazy

České odkazy o AS:

Ostatní odkazy o AS (anglicky):

Šablona:Pahýl - software