Toepassingen ontwikkelen met ActionScript

Wanneer u een toepassing wilt ontwikkelen met ActionScript, hebt u meer nodig dan alleen kennis van de syntaxis en de namen van de klassen die u gebruikt. De meeste Flash Platform-documentatie gaat over twee onderwerpen (syntaxis en het gebruik van ActionScript-klassen). Om een ActionScript-toepassing te bouwen wilt u waarschijnlijk ook meer informatie over de volgende onderwerpen:

  • Welke programma's kunnen worden gebruikt voor het schrijven met ActionScript?

  • Hoe wordt ActionScript-code georganiseerd?

  • Hoe kan ActionScript-code in een toepassing worden toegevoegd?

  • Welke stappen moet u volgen bij het ontwikkelen van een ActionScript-toepassing?

Opties voor het ordenen van code

U kunt ActionScript 3.0-code gebruiken voor het aansturen van eenvoudige grafische animaties tot complexe systemen voor client-servertransactieverwerking. Afhankelijk van het type toepassing dat u ontwikkelt, kunt u kiezen voor één of meer van de volgende mogelijkheden om ActionScript in uw project op te nemen.

Code opslaan in frames in een Flash Professional-tijdlijn

In Flash Professional kunt u ActionScript-code toevoegen aan een willekeurig frame in een tijdlijn. Deze code wordt uitgevoerd tijdens het afspelen van de film, wanneer de afspeelkop het betreffende frame ingaat.

Het plaatsen van ActionScript-code in frames is een eenvoudige manier om gedragingen toe te voegen aan een toepassing die is ontwikkeld met Flash Professional. U kunt code toevoegen aan een willekeurig frame in de hoofdtijdlijn van een filmclipsymbool. Deze flexibiliteit heeft echter een nadeel. Wanneer u grotere toepassingen ontwikkelt, verliest u gemakkelijk het overzicht over welke frames welke scripts bevatten. Na verloop van tijd kan de complexe structuur het onderhoud van de toepassing bemoeilijken.

Veel ontwikkelaars vereenvoudigen de organisatie van ActionScript-code in Flash Professional door code alleen te plaatsen in het eerste frame van een tijdlijn of in een specifieke laag in het Flash-document. Wanneer u uw code onderverdeeld, wordt het eenvoudiger om de code in FLA-bestanden van Flash te vinden en te onderhouden. Dezelfde code kan echter niet worden gebruikt in een ander Flash Professional-project zonder de code eerst in een nieuw bestand te kopiëren.

Om het gemakkelijker te maken om uw ActionScript-code later in andere Flash Professional-projecten te gebruiken, slaat u uw code op in externe ActionScript-bestanden (tekstbestanden met de .as-extensie).

Code in Flex MXML-bestanden insluiten

In een Flex-ontwikkelingsomgeving zoals Flash Builder, kunt u ActionScript-code toevoegen in een <fx:Script> -tag in een MXML-bestand. Deze techniek kan grote projecten complexer maken en het moeilijker maken om dezelfde code in een ander Flex-project te gebruiken; Om het gemakkelijker te maken om uw ActionScript-code in toekomstige projecten te gebruiken, slaat u uw code op in externe ActionScript-bestanden.

Opmerking: U kunt een bronparameter opgeven voor een <fx:Script> -tag. Als u een bronparameter gebruikt, kunt u ActionScript-code uit een extern bestand importeren alsof deze rechtstreeks in de <fx:Script> -tag is ingevoerd. Het bronbestand dat u gebruikt kan geen eigen klasse definiëren, waardoor hergebruik beperkt is.

Code opslaan in ActionScript-bestanden

Als een project veel ActionScript-code bevat, kunt u de code het best ordenen in afzonderlijke ActionScript-bronbestanden (tekstbestanden met de extensie .as). Een ActionScript-bestand kan op twee manieren worden gestructureerd, afhankelijk van het gebruiksdoel in de toepassing.

  • Ongestructureerde ActionScript-code: regels ActionScript-code, met instructies of functiedefinities, die zijn geschreven alsof deze rechtstreeks zijn ingevoerd in een tijdlijnscript of MXML-bestand.

    ActionScript die op deze manier is geschreven, kunt u benaderen met de instructie include in ActionScript of met de tag <fx:Script> in Flex MXML. De ActionScript-instructie include vertelt de compiler om de inhoud van een extern ActionScript-bestand op een bepaalde locatie en binnen een bepaald bereik in een script toe te voegen. Het resultaat is hetzelfde als wanneer de code daar rechtstreeks werd ingevoerd. Wanneer u in MXML-taal een <fx:Script> -tag gebruikt met een bronattribuut, geeft dit een extern ActionScript aan dat door de compiler op dat punt in de toepassing wordt geladen. Met de volgende tag wordt bijvoorbeeld het externe ActionScript-bestand Box.as geladen:

    <fx:Script source="Box.as" />
  • ActionScript-klassendefinitie: Een definitie van een ActionScript-klasse, inclusief de methode- en eigenschapdefinities.

    Wanneer u een klasse definieert kunt u de ActionScript-code in de klasse openen, door een instantie van de klasse te maken en zijn eigenschappen, methoden en gebeurtenissen te gebruiken. Gebruik van uw eigen klassen is identiek aan het gebruik van ingebouwde ActionScript-klassen en vereist twee delen:

    • Geef de volledige naam van de klasse op met behulp van de instructie import , zodat de compiler van ActionScript de klasse kan vinden. Gebruik bijvoorbeeld om de Filmclip-klasse in ActionScript te gebruiken, importeert u de klasse met de volledige naam, inclusief pakket en klasse:

      import flash.display.MovieClip;

      U kunt ook het pakket importeren dat de klasse MovieClip bevat. Dit staat gelijk aan het schrijven van afzonderlijke instructies import voor elke klasse in het pakket:

      import flash.display.*;

      De bovenste klassen zijn de enige uitzondering op de regel, dat een klasse geïmporteerd moet zijn om die klasse in uw code te gebruiken. Die klassen zijn niet gedefinieerd in een pakket.

    • Code schrijven die specifiek de klassenaam gebruikt. Declareer bijvoorbeeld een variabele met die klasse als gegevenstype en maak een instantie van de klasse om in de variabele op te slaan. Door een klassennaam in ActionScript-code te gebruiken, geeft u aan de compiler door dat de definitie van die klasse moet worden geladen. Bij een externe klasse Box, maakt deze instructie een instantie van de Box-klasse:

      var smallBox:Box = new Box(10,20);

      De eerste keer dat de compiler de referentie naar de Box-klasse tegenkomt, zoekt deze in de beschikbare broncode naar de locatie van de Box-klassedefinitie.

Het juiste gereedschap kiezen

U kunt een van verschillende gereedschappen (of meerdere gereedschappen tegelijk) gebruiken voor het schrijven en bewerken van uw ActionScript-code.

Flash Builder

Adobe Flash Builder is het belangrijkste gereedschap voor het maken van projecten met het Flex-framework of projecten die vooral uit ActionScript-code bestaan. Flash Builder bevat ook een volledige ActionScript-editor en mogelijkheden voor visuele lay-out en MXML-bewerking. U kunt hiermee alleen-ActionScript en Flex-projecten maken. Flex biedt verschillende voordelen, zoals een uitgebreide verzameling van vooraf ontwikkelde besturingselementen voor gebruikersinterfaces, flexibele, dynamische besturingselementen voor lay-out en ingebouwde mechanismen voor het werken met externe gegevensbronnen en het koppelen van externe gegevens aan gebruikersinterface-elementen. Omdat de extra vereiste code deze functies echter biedt, kunnen projecten met Flex een grotere SWF-bestand hebben dan niet-Flex projecten.

Gebruik Flash Builder als u complete gegevensgeoriënteerde internettoepassingen met Flex maakt. Gebruik het als u ActionScript-code of MXML-code wilt bewerken en uw toepassing visueel wilt ontwerpen met slechts één gereedschap.

Veel Flash professional-gebruikers die ActionScript-georiënteerde projecten maken, gebruiken Flash Professional om visuele attributen te maken en Flash Builder als een editor voor ActionScript-code.

Flash Professional

Naast mogelijkheden voor het maken van afbeeldingen en animatie, heeft Flash Professional ook gereedschappen voor werken met ActionScript-code. De code kan worden gekoppeld aan elementen in een FLA-bestand of in externe alleen-ActionScript-bestanden. Flash Professional is perfect voor projecten die veel animatie of video bevatten. Het is erg nuttig wanneer u zelf de meeste afbeeldingen wilt maken. Als u Flash Professional gebruikt voor het ontwikkelen van uw ActionScript-project, kunt u visuele middelen maken en code schrijven met dezelfde toepassing. Flash Professional bevat ook vooraf gebouwde gebruikersinterfacecomponenten. U kunt die componenten ook gebruiken om een kleinere SWF-bestandsgrootte te verkrijgen en gebruik visuele gereedschappen om ze voor uw project te skinnen.

Flash Professional bevat twee gereedschappen om ActionScript-code te schrijven:

  • Deelvenster Handelingen: met dit deelvenster, dat beschikbaar is wanneer u in een FLA-bestand werkt, kunt u ActionScript-code schrijven die is gekoppeld aan frames in een tijdlijn.

  • Script-venster: het Script-venster is een speciale teksteditor voor het werken met ActionScript-codebestanden (.as).

ActionScript-editor van derden

Aangezien ActionScript-bestanden (.as) worden opgeslagen als eenvoudige tekstbestanden, kunt u elk programma waarmee onbewerkte tekst kan worden bewerkt, gebruiken om ActionScript-bestanden te schrijven. In aanvulling op de ActionScript-producten van Adobe zijn er door derden verschillende teksteditors ontwikkeld met specifieke ActionScript-mogelijkheden. U kunt met elke willekeurige teksteditor een MXML-bestand of ActionScript-klassen schrijven. U kunt dan van deze bestanden met behulp van Flex SDK een toepassing maken. Het project kan Flex gebruiken of is een alleen-ActionScript-toepassing. Sommige ontwikkelaars gebruiken ook Flash Builder of een ActionScript-editor van derden voor het schrijven van ActionScript-klassen, in combinatie met Flash Professional voor het maken van de grafische inhoud.

Redenen om te kiezen voor een ActionScript-editor van derden zijn:

  • U wilt liever ActionScript-code in een apart programma schrijven en visuele elementen ontwerpen in Flash Professional.

  • U gebruikt een toepassing om te programmeren in een andere taal dan ActionScript (zoals het maken van HTML-pagina’s of het ontwikkelen van toepassingen in een andere programmeertaal) en u wilt dezelfde toepassing ook gebruiken voor uw ActionScript-code.

  • U wilt projecten met alleen ActionScript of Flex-projecten maken met behulp van de Flex SDK zonder Flash Professional of Flex Builder.

Enkele bekende code-editors met specifieke ActionScript-ondersteuning zijn de volgende:

Het ontwikkelingsproces voor ActionScript

Of uw ActionScript-project nu groot of klein is, als u werkt met een proces om uw toepassing te ontwerpen en ontwikkelen werkt u veel efficiënter en effectiever. De volgende stappen beschrijven een basisproces voor het ontwikkelen van een toepassing met ActionScript 3.0:

  1. Ontwerp uw toepassing.

    U moet op een of andere manier uw toepassing beschrijven voordat u deze gaat ontwikkelen.

  2. Stel uw ActionScript 3.0-code samen.

    U kunt ActionScript-code maken met Flash Professional, Flex Builder, Dreamweaver of een teksteditor.

  3. Maak een Flash- of Flex-project om uw code uit te voeren.

    In Flash Professional, maakt u een FLA-bestand, stelt u de publicatie-instellingen in, voegt u gebruikersinterfacecomponenten in de toepassing in en verwijst u naar de ActionScript-code. definieer de toepassing in Flex, voeg gebruikersinterfacecomponenten toe met MXML en verwijs naar de ActionScript-code.

  4. Publiceer en test uw ActionScript-toepassing.

    Wanneer u uw toepassing test, voert u uw toepassing uit vanaf uw ontwikkelingsomgeving en controleert u of deze alles uitvoert zoals u had bedoeld.

Het is niet noodzakelijk dat u de stappen in deze volgorde uitvoert of dat u een stap volledig voltooit voordat u aan een andere stap begint. U kunt bijvoorbeeld een scherm van uw toepassing ontwerpen (stap 1) en vervolgens de afbeeldingen, knoppen enzovoort maken (stap 3), voordat u ActionScript-code schrijft (stap 2) en test (stap 4). Of u ontwerpt een onderdeel ervan en voegt vervolgens één knop of interface-element tegelijk toe, waarvoor u ActionScript schrijft en tijdens het ontwikkelen tests uitvoert. Het is goed om deze vier fasen van het ontwikkelingsproces te onthouden. In de ontwikkelingspraktijk is het effectiever om zoals nodig tussen de fasen te wisselen.