Operation Manual
494
FLASH CS4 PROFESSIONAL GEBRUIKEN
Tips en trucs
• Voor bestanden die op een desktopcomputer worden afgespeeld is het verstandig om alle inhoud aan het begin van
het bestand te plaatsen, zodat deze vooraf wordt geladen. Maar als u op een mobiel apparaat de inhoud vooraf laadt,
kan dat tot gevolg hebben dat er een vertraging optreedt bij het starten van het bestand. Het is beter om de inhoud
over het hele bestand te verspreiden, zodat de filmclips pas worden geïnitialiseerd op het moment dat deze worden
gebruikt.
Zie http://www.adobe.com/go/learn_cs_mobilewiki_nl voor meer tips en technieken voor het maken van inhoud voor
mobiele telefoons en apparaten.
ActionScript optimaliseren voor Flash Lite-inhoud op mobiele apparaten
De meeste mobiele apparaten hebben slechts een beperkte verwerkingssnelheid en een beperkte hoeveelheid
beschikbaar geheugen. Volg daarom deze richtlijnen bij het ontwikkelen van ActionScript voor Flash Lite-inhoud die
bestemd is voor mobiele apparaten:
• Houd het bestand en de code ervan zo eenvoudig mogelijk. Verwijder filmclips die u niet gebruikt, verwijder
overbodige frame- en codelussen en gebruik vooral niet te veel frames of externe frames.
• Het gebruik van FOR-lussen kan ook sterk vertragend werken, omdat het controleren van de voorwaarde bij elke
iteratie veel tijd kost. Als het gebruik van iteraties en lussen te veel tijd gaat kosten, kunt u beter meerdere
bewerkingen afzonderlijk uitvoeren in plaats van lus te gebruiken. De code is in dat geval misschien langer, maar
de inhoud wordt wel sneller en beter afgespeeld.
• Stop een lusbewerking voor frames zodra deze niet meer nodig is.
• Probeer verwerking van tekenreeksen en matrices zoveel mogelijk te voorkomen, want daarmee wordt de CPU
zwaar belast.
• Probeer altijd rechtstreeks toegang te krijgen tot eigenschappen; gebruik liever geen ActionScript-methoden voor
het ophalen en instellen van eigenschappen, omdat deze meer tijd kosten dan andere methodeaanroepen.
• Beheer gebeurtenissen op een verstandige manier. Zorg dat gebeurtenislistener-matrices compact blijven door
voorwaarden te gebruiken om te controleren of een bepaalde listener bestaat (niet
null is) voordat u deze aanroept.
Wis alle actieve intervallen door
clearInterval aan te roepen en verwijder alle actieve listeners door
removeListener aan te roepen voordat u inhoud verwijdert met unloadapplication of
removeapplicationClip. Flash haalt SWF-gegevens (bijvoorbeeld van intervallen en listeners) niet opnieuw uit
het geheugen op als er nog steeds ActionScript-functies zijn die verwijzen naar de SWF-gegevens wanneer een
filmclip uit het geheugen is verwijderd.
• Verwijder variabelen of maak ze null wanneer u ze niet meer nodig hebt. Hierdoor worden de variabelen
gemarkeerd voor garbage collection. Door variabelen te verwijderen helpt u het geheugengebruik te optimaliseren
tijdens runtime omdat elementen die u niet nodig hebt, uit het SWF-bestand zijn verwijderd. Het is beter variabelen
te verwijderen dan ze op
null in te stellen.
• Verwijder listeners expliciet van objecten door voorafgaande aan de 'garbage collection' removeListener aan te
roepen.
• Wordt een functie dynamisch aangeroepen en geeft deze een vaste set parameters door, gebruik dan call in plaats
van
apply
• Maak naamruimten (zoals paden) compacter om de opstarttijd te verminderen. Elk niveau in het pakket wordt
gecompileerd tot een
IF-instructie en leidt tot een nieuwe Object-aanroep, dus als er minder niveaus in het pad
aanwezig zijn, kost de verwerking van het pad minder tijd. Een pad met bijvoorbeeld de niveaus
com.xxx.yyy.aaa.bbb.ccc.funtionName leidt ertoe dat er een object wordt gemaakt voor
com.xxx.yyy.aaa.bbb.ccc. Sommige ontwikkelaars die werken met Flash, gebruiken voorverwerkingssoftware
om het pad om te zetten in een unieke id, zoals
58923409876.functionName, voordat de SWF-code wordt
gecompileerd.