. .. : Swf.hu 1.0 archívum : Swf.hu főoldal >>> : .. .




 
 
SEGÉDLETEK ActionScript alapok

ActionScript a Flash MX és a Flash MX 2004 verziókban
  feltöltve: 2005.03.24 | szerző: sgabe | olvasva: 5447 alkalommal

   
 

Ez a segédlet sorozat a Macromedia Flash MX (Professional) 2004 és a Flash MX szofverek közti különbségeket, az új verzióban elérhető lehetőségeket, az áttérés előnyeit-hátrányait illetve nehézségeit tárgyalja, kezdve az ActionScripttel. Amennyiben igény van rá, folytatódik a sorozat és szó lesz a komponensekről, video kezelésről, adat integrációról a két verzió közti különbségek szempontjából...

Az ActionScript a Macromedia Flash programozási nyelve, számos verzióját dolgozták ki. A Flash MX 2004 azonban annyi változtatást tartalmaz ezen a téren, amely elegendőnek bizonyult ahhoz, hogy mostantól ActionsScript 2.0 legyen.

Az ActionScript 2.0 nem helyettesíti az ActionScript 1.0 verzióját és nem gondoskodik az ActionScript 1.0 verzióban nem elérhető képességekről. Inkább egy olyan új nyelv elemeit tartalmazza, amely sokkal könnyebbé teszi az objektum-orientált programozást. Az olyan kulcsszavak (keyword) bevezetésével, mint például a  class, interface, extends és implements az ActionScript 2 egy szabályos modelljét mutatja egy objektum-orientált kódnak - mely ismerős lesz azoknak a programozóknak a számára, akik már dolgoztak Java, JavaScript 2.0 vagy C# nyelven.

Összefoglalva egy új objektum-orientált programozási modellhez az ActionScript 2.0 pontos adattípus meghatározást használ a változókhoz, függvény paraméterekhez, visszatérő típusokhoz valamint egy hatékonyabb fordítót, mely sokkal egyszerűbbé teszi a kód kijavítását hiba esetén.

Az ActionScript 2.0 kódok futnak a Flash Player 6 és későbbi verzióin, ha azonban Flash Palyer 5 a cél lejátszó, akkor használj ActionScript 1.0 kódokat.

Áttérés az ActionScript 2.0 és Flash Player 7 verziókra

Nem kell az ActionScript 2.0 kódjait használnod, hogy scripteket írhass Flash MX 2004 alatt. Bármilyen ActionScript, amit a Flash korábbi verzióiban írtál működik Flash MX 2004 alatt. Továbbra is írhatsz kódot ugyanazzal a technikával és nyelvi elemekkel amelyekkel eddig szoktál.

Amiért érdemes fontolóra venni az áttérést:

  • Egy nagy arányú Flash alkalmazás vagy bemutató készítése során ami sok kódot tartalmaz, az ActionScript 2.0 használata gyorsabbá teszi a tervezés és a hibajavítás folyamatát.
     

  • Egy objektum-orientált program esetén, amely ActionScript használatával készült Flash MX vagy Flash 5 segítségével, az ActionScript 2.0 verzióra való átállás könnyebbé teszi a kód fenntartását és módosítását.
     

  • Esetleg érdekel az objektum-orientált programozás (OOP) és egy hasonló tervezői környezetben szeretnél megismerkedni vele közelebbről.

Kombinálhatod az ActionScript 1.0 és ActionScript 2.0 kódjait ugyanabban a projektben mindaddig, amíg meghatározod az ActionScript 2.0 verziót a dokumentum publikálási beállításainál.

Publikálás ActionScript 2.0 és ActionScript 1.0 verziókkal

A Macromedia Flash MX 2004 az ActionScript minden verziójára tartalmaz egy fordítót (compiler). A Flash dokumentum publikálási beállításainál (Publish Settings) meghatározhatod a számodra megfelelő verziót, de alapértelmezésben az ActionScript 2.0 van beállítva.

Az ActionScript 2.0 fordítója minden ActionScript 1.0 kódot képes kezelni a következő kivétellel: a slash vagyis / a moziklipek helyének jelölésére szolgált (például parentClip/moziMC) így ha az ActionScript 2.0 a beállított ActionScript verzió akkor szerkesztési hibát fog generálni. A probléma megoldásához írd át a kódot . (dot) használatával a / (slash) helyén vagy ActionScript 1.0 fordítót használj.

Osztályok (class) létrehozása ActionScript 2.0 segítségével

A legfőbb különbség az ActionScript 2.0 és 1.0 között az objektum-orientált programozás megközelítése. Ha programoztál már Java, JavaScript 2.0 vagy C# nyelveken tudásodat könnyedén felhasználhatod az ActionScript 2.0 elsajátítására. Ha most ismerkedsz először az objektum-orientált programozással az ActionScript 2.0 megismerése során hasznos tapasztalatokat szerezhetsz, melyeket később felhasználhatsz a munkád során.

Néhány fontos megjegyzés az ActionScript 2.0 osztályok létrehozásával kapcsolatban:

  • ActionScript 2.0 osztályok kizárólag külső ActionScript (AS) fájlokban lehetnek. Például nem definiálhatsz egy osztályt egy képkockán vagy gombon egy FLA fájlon belül. A Script ablak a Flash Professionalben lehetővé teszi, hogy könnyen készítsünk és szerkesszünk külső AS fájlokat a Flash fejlesztői környezet elhagyása nélkül. Ha a Flash MX 2004 alap verzióját használod, akkor az általad kedvelt bármely szöveg- illetve kódszerkesztő programot használhatod.
     

  • Az AS fájl nevének egyeznie kell annak az osztálynak a nevével amit tartalmaz. Például ha létrehozol egy ActionScript 2.0 osztályt "MyClass" néven, akkor az ezt tartalmazó AS fájlnak "MyClass.as" néven kell lennie.

Példa osztály létrehozására ActionScript 2.0 használatával:


// osztály létrehozása ActionScript 2.0 használatával

class Circle extends Shape {

   var radius:Number;

   

   function Circle(radius:Number) {

      this.radius = radius;

   }

   

   function setRadius(radius:Number):Void {

      this.radius = radius;

   }

}

És alább ugyanaz az osztály, de ActionScript 1.0 használatával:


// osztály létrehozása ActionScript 1.0 használatával

function Circle (radius) {

   this.radius = radius;

}



Circle.prototype = newShape();



Circle.prototype.setRadius = function (radius) {

   this.radius = radius;

}

Ezen az egyszerű példán is jól látható, hogy az ActionScript 2.0 egy sokkal intuitívabb programozási modellel rendelkezik az osztályok létrehozására, mint az ActionScript 1.0. Lásd a pontos adattípus meghatározást például a változók, valamint a függvény paramétereknél és a visszatérő változóknál. Erről bővebben a következő bekezdésekben.

Pontos adattípus meghatározás (strict data typing) ActionScript 2.0 segítségével

Az egyik sajátság, ami megkülönbözteti az ActionScript 2.0 és az ActionScript 1.0 verziókat, az a pontos adattípus meghatározásának lehetősége. Így meghatározható az adat, melyet változóként lehet megjelölni, egy függvény paramétereként szolgálhat vagy visszatérhet egy függvény által. Ez lehetővé teszi az ActionScript 2.0 fordító számára, hogy sokkal mélyrehatóbb hibajavítási információkkal szolgáljon, mint az ActionScript 1.0 használatával, ami lényegesen egyszerűbbé és gyorsabbá teszi a hibakeresési- illetve javításifolyamatot. A pontos adattípus meghatározást alkalmazhatod a FLA scriptjeidben, illetve külső osztály fájlokban is.

Egy adattípus változó, függvény paraméter vagy visszatérő típusként való meghatározására a : (colon) használd. Például a következő kód azt mutatja, hogy az xPosition változó egy szám (Number) típusú adat: var xPosition:Number;

Ha a script néhány más pontján, olyan értéket rendelsz az xPosition változóhoz, ami nem szám (Number)  típusú, akkor az ActionScript 2.0 fordítója hibát okoz majd.  A függvények és a visszatérő változók típusát is meghatározhatod. Például a következő függvény egy szöveges (String) paramétert vár és egy számmal (Number) tér vissza: function stringToNum(numString:String):Number { // }

Itt jegyezném meg, hogy a pontos adattípus meghatározása egy fordítás idejű lehetőség, tehát a Flash Player nem teszi lehetővé a futtatás idejében.

 
   
 
 

© Devnet.hu. A segédletek semmilyen formában nem másolhatók, publikálhatók a Devnet.hu és a szerzők közös írásos engedélye nélkül.
 
. .. : Swf.hu 1.0 archívum : Swf.hu főoldal >>> : .. .