Operation Manual

495
FLASH CS4 PROFESSIONAL GEBRUIKEN
Tips en trucs
Bestaat een bestand uit meerdere SWF-bestanden die dezelfde ActionScript-klassen gebruiken, sluit deze klassen
dan uit bij het selecteren van SWF-bestanden tijdens het compileren. Hiermee kunt u de tijd die het kost om een
bestand te downloaden verkorten en de geheugenbehoefte tijdens runtime verminderen.
Vermijd het gebruik van Object.watch en Object.unwatch; bij elke verandering aan een objecteigenschap moet
de player namelijk controleren of er een veranderingsbericht moet worden verzonden.
Als het voltooien van de ActionScript-code die wordt uitgevoerd in een keyframe in de tijdlijn, langer dan 1 seconde
duurt, kunt u de code het beste opsplitsen en verdelen over meerdere keyframes.
Verwijder trace-instructies uit de code wanneer u het SWF-bestand publiceert. Schakel daartoe het selectievakje
Omit Trace Actions in op het tabblad Flash in het dialoogvenster Publish Settings.
Door overname wordt het aantal methodeaanroepen vergroot en wordt er meer geheugen gebruikt: een klasse die
alle functionaliteit bevat die nodig is, is efficiënter tijdens runtime dan een klasse die een deel van haar
functionaliteit overneemt van een bovenliggende klasse. Daarom moet u bij het maken van uw ontwerp de
uitbreidbaarheid van klassen en de efficiëntie van de code tegen elkaar afwegen.
Als een SWF-bestand een ander SWF-bestand laadt dat een aangepaste ActionScript-klasse bevat (bijvoorbeeld
foo.bar.CustomClass) en als vervolgens het SWF-bestand uit het geheugen wordt verwijderd, blijft de
klassendefinitie in het geheugen aanwezig. Om geheugen te sparen, kunt u alle aangepaste klassen van SWF-
bestanden die uit het geheugen zijn verwijderd, expliciet verwijderen. Gebruik de instructie
delete en geef de
volledige klassenaam op, zoals:
delete foo.bar.CustomClass.
Beperk het gebruik van globale variabelen, omdat deze niet worden gemarkeerd voor 'garbage collection' als de
filmclip die deze variabelen heeft gedefinieerd, wordt verwijderd.
Gebruik geen onderdelen van de standaardgebruikersinterface (beschikbaar in het componentenpaneel in Flash).
Deze onderdelen zijn ontworpen voor gebruik op desktopcomputers en zijn niet geoptimaliseerd om te worden
uitgevoerd op mobiele apparaten.
Gebruik, wanneer dat maar enigszins mogelijk is, geen diep geneste functies.
Verwijs niet naar variabelen, objecten of functies die niet bestaan. In vergelijking met de desktopversie van Flash
Player, werkt Flash Lite 2 vrij langzaam bij het opzoeken van variabelen die niet bestaan, waardoor het
prestatievermogen aanzienlijk afneemt.
Definieer geen functies met een anonieme syntaxis. Bijvoorbeeld myObj.eventName = function{ ...}. Expliciet
gedefinieerde functies zijn efficiënter, zoals
function myFunc { ...}; my Obj.eventName = myFunc;.
Gebruik zo weinig mogelijk wiskundige functies en drijvende-kommagetallen. Door het berekenen van deze
waarden wordt de inhoud langzamer weergegeven. Als u gedwongen bent wiskundige routines te gebruiken, is het
de moeite waard om de waarde vooraf te berekenen en in een matrix van variabelen op te slaan. De waarden kunnen
veel sneller uit een gegevenstabel worden opgehaald dan dat Flash de waarden kan berekenen tijdens runtime.
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.
Het Flash Lite-bestandsgeheugen voor mobiele apparaten beheren
In Flash Lite worden objecten en variabelen waarnaar niet meer wordt verwezen vanuit een bestand, geregeld uit het
geheugen verwijderd. Dit wordt 'garbage collection' genoemd. Flash Lite voert het 'garbagecollection-proces' elke 60
seconden eenmaal uit. Dit proces wordt ook uitgevoerd zodra het gebruik van het bestandsgeheugen plotseling met
20% of meer toeneemt.