Ismerkedés az ActionScript 3-mal, 1. rész

Bizony, már nagyon előrehaladott állapotban van maga a nyelv is, a Flash Player 9-essel, és a Flex 2-vel egyetemben, pár hónapon belül élesíti az Adobe őket, és akkor lesz nemulass, mert az ActionScript 3 tényleg zsírság :) Az Eclipse-ről nem is beszélve, amire a Flex 2-es épül.

Mindkettő letölthető az Adobe Labs-ról.
Aki szeret doksit olvasni, az itt talál egy összefoglalót a nyelvről.
De mi gyakorlati emberek vagyunk, így hát vágjunk is bele rögvest azon nyomban. Csináljunk egy narancssárga kört ( labdát ) kezdetnek.

Indítsuk el a Flex 2-őt, File – New – Actionscript Project, írjuk be a TestBall nevet kezdésnek. Erre ki fog nekünk hányni egy csomó könyvtárat meg fájlt a Navigator ablakban a mocsok :) a bin tartalmazza a futtatáshoz ( szerinte ) nélkülözhetetlen file-okat, a html-template pedig azokat a cuccokat, amiket publikálhatsz ha akarsz.

Minket a legalul található TestBall.as file érdekel, ez a project “vezérlő” scriptje, és egyenlőre az egyetlen is :) Kattints rá kettőt, és ezt látod:

package {
	import flash.display.MovieClip;

	public class TestBall extends MovieClip
	{
		public function TestBall()
		{
		}
	}
}

még mielőtt bármit is mondanék ehhez, formázzuk egy kicsit a kódot, ugyanis az átlátható és jól beosztott kód nélkülözhetetlen a jó programhoz, már az elején hozzá kell szoktatni magunkat a tiszta, rendes munkához. Minden nagyobb blokk közé 3 komment, kapcsos zárójelek sor elején, és akkor nem bántalak.

//begin
//
//
package 
{
	//
	//
	//
	import flash.display.MovieClip;
	//
	//
	//
	public class TestBall extends MovieClip
	{
		//
		//
		//
		public function TestBall()
		{
			//
			//
		}
		//
		//
		//
	}
	//
	//
	//
}
//
//
//end

Királyok vagyunk már most ( is ). Mit is látunk? Létrehoztunk egy csomagot ( package ) ami tartalmaz egy publikus ( kívülről elérhető ) osztályt. Egy csomag több osztályt is tartalmazhat, de csak egy publikusat, a többit a package-et lezáró kapcsoszárójel után írhatjuk be, és ezek az osztályok csak a lokális csomagban elérhetőek.

Aztán látunk olyat is, hogy public class TestBall extends MovieClip. Ez azt jelenti, hogy a TestBall osztályunk a MovieClip osztályból lett származtatva, ami érthető is, hiszen látni is szeretnénk valamit futtatás után :) Ami nagy újítása az AS3-nak, hogy már nem csak a MovieClip osztály az egyetlen, ami a megjelenítéshez kapcsolódik, ott van még a Shape és a Sprite is, nekik nincs Timeline-uk, így jobban lehet optimalizálgatni velük.

Mindenesetre mi most egy MovieClipből származtatott osztályban garázdálkodunk, tehát van saját x,y koordinátánk, meg minden hülyeség amit a MovieClip tud. És tudunk benne rajzolni is!!! Ugyanis, ha gondosan nézegetjük a helpet, meg a webes AS3 doksit, észrevehetjük, hogy a MovieClip osztály a Sprite osztályból van származtatva, neki pedig van egy graphics propertyje, ami nem más, mint egy instance-e a Graphics osztálynak, ami tartalmazza a rajzoló függvényeket :) Egyszerű, nem?

Mindenesetre ennek tudatában már nekibátorkodhatunk a labdánknak:

//begin
//
//
package 
{
	//
	//
	//
	import flash.display.MovieClip;
	//
	//
	//
	public class TestBall extends MovieClip
	{
		//
		//
		//
		public function TestBall( )
		{
			//
			graphics.beginFill( 0xff0000 , 1 );
			graphics.drawCircle( 20 , 20 , 20 );
			graphics.endFill( );
			//
		}
		//
		//
		//
	}
	//
	//
	//
}
//
//
//end

Menü – Run – Debug TestBall, és már dobódik is föl az alapértelmezett böngészőnk, és ott van a csodálatos tesztlabánk!!! Jesszz!!!

Remélem elégedettek vagytok a mai eredményeitekkel, nagyot léptünk előre, már az elején!!! :)

MilGra

A cikkhez kapcsolódó hozzászólásokat a fórum “Actionscript 3” topicjában várjuk.

8 HOZZÁSZÓLÁS

  1. Ne taníts hülyeségekre kezdő programozni vágyó fiatalokat.
    Mi ez a buta kommentezés?

  2. Te Bela!:)

    Már ne haragudj, de szerintem így teljesen érthető amit leírt MilGra.

  3. Bocs ha félreérthető voltam! Az alábbi felesleges és zavaró komment jelekre gondoltam meg az ilyen magyarázatokra:
    “már az elején hozzá kell szoktatni magunkat a tiszta, rendes munkához. Minden nagyobb blokk közé 3 komment, kapcsos zárójelek sor elején, és akkor nem bántalak.”
    Tiszta és rendes munka… melyik ide-ben látsz hasonlót?
    //
    //
    //
    public class TestBall extends MovieClip
    {

  4. Sziasztok

    Keresnék egy vállalkozó kedvű programozot aki segítene megtanulni ezt a nyelvet és gyakorlatban megmutatná hogyan lehet weblapot készíteni Flesh-el. Előre is köszönöm.

  5. hellosztok programozo szeretnek lenni de nem lehetek:-( nincs a kozelben olyan suli tehat erdesz leszek :-D de hobbikent szeretnem megtanulni az action es vbsscripteket.
    Szeretnek csinalni majd 1szer egy bunyos jatekot 2d-ben de ennekem a flash8hoz kene mert azt mer letoltottem ingyen. 4 oramba telt-.- 44 kb/s -os netem van neha mar a neted szidom es anyam aszongya budhista vok XD

  6. Heló!

    Én már legalább 3-4 éve foglalkozom az action scriptel (AS2vel kezdtem, de most AS3ra átváltottam, ami valóban egyszerűbb), de még ilyen hülyeséget sehol sem láttam, hogy “Minden nagyobb blokk közé 3 komment”, ez egy óriási baromság! Tény és való, hogy kommentet tanácsos irni, de akkor oda értelmes szöveg is kerüljön, hogy azzal is megkönnyitsük magunk és más dolgát a script megértésében és nem 3 üres kommentet!
    Ez csak összezavarhatja az embert, meg igy olyan hosszú lesz a kód,h aztán ember legyen a talpán aki visszakeresi, hogy hol is kezdődött az a bizonyos funkció, stb.

    üdv.LostMind

  7. Lehetőleg senki ne ebből a leírásból kezdje a tanulást, mert egy összecsapott, szétsmileyzott komolytalan munka…Kommentet meg mindenki úgy ad a munkájához ahogy akar, 7 év alatt sok félét láttam már ,de ne erőszakoljuk rá senkire sem a fenti példában látottakat, mert a komment maga is lehet zavaró a kód olvasásakor, különösen ha nem szükséges, vagy nincs megfelelő helyen.

  8. Hát sokatoknak igaza van egy pár éve szerkesztek flash-ben többféle terepen: animációk,játékok, honlapok. Jómagam is megjegyzéseket írok néha egy blokkhoz ha a későbbiekben változtatni kell majd de hogy sorba hármat? Nem valami hasznos azon felül ha sokatoknak kedve van megtanulni itt pár hasznos link, én is ezekkel kezdtem:

    http://www.tutorialized.com/ -nem csak Flash-hez!!!
    http://www.lynda.com/ -itt érdemes regisztrált felhasználónak lenni mert csak akkor férhettek hozzá a teljes tan anyagokhoz.

    Amúgy meg érdemesebb Google-ban specifikusan keresni anyagokat bár feltétel egy közép vagy erős angol tudás.

    Sok sikert mindenkinek. :)

HOZZÁSZÓLOK A CIKKHEZ

Kérjük, írja be véleményét!
írja be ide nevét