18.4 Optimierung
Codedesign\Optimieren
Eine strukturierte Vorgehensweise hilft bereits ungemein, eine kompakte und schnell ladende Anwendung mit guter Performance zu erhalten. Dennoch kann häufig selbst dann noch optimiert werden, wenn im Vorfeld eigentlich alles optimal gelaufen ist. Nur muss dann in den Bytecode der SWF-Dateien eingegriffen werden: Das Ergebnis steht dabei jedoch meist nicht im Verhältnis zum doch recht hohen Aufwand, der der Programmierung von Assemblern gleichkommt!
18.4.1 Bytecode optimieren und extrahieren
Ein Blick auf die Website von Flasm lohnt, da dort viele Eigenheiten des Flash-Bytecodes erklärt sind.
Sowohl der Bytecode der SWF-Dateien als auch der Quellcode des Macromedia Flash Players sind bei Macromedia zur Lizenzierung erhältlich. Dies und der Ehrgeiz der Entwicklergemeinde haben dazu geführt, dass der Aufbau einer SWF-Datei kein Geheimnis mehr ist. Pioniere in diesem Bereich sind Igor Kogan und Dave Hayden. Ihr Programm Flasm (http://flasm.sourceforge.net/) erlaubt es, den Bytecode in SWF-Dateien zu bearbeiten und zu optimieren. Flasm profitiert dabei von den Erkenntnissen, die unter dem Titel »Casper´s findings« errungen wurden: Casper Shuirink hat zahlreiche nicht dokumentierte Eigenheiten des SWF-Formates entdeckt und dokumentiert (http://www.nowrap.de/script.as), die bei der doch recht grundlegenden Umstellung von den Aktionen (Flash 4) auf ActionScript (Flash 5) zum Tragen kamen.
Auf dieser Basis sind viele unterschiedliche Werkzeuge rund um das SWF-Format entstanden. Optimaze beispielsweise komprimiert Dateien auf bis zu 60 Prozent der Originalgröße, in dem es die grafischen Bestandteile vereinfacht – losgelöst von der in der Regel ohnehin stattfindenden zlib-Komprimierung der SWF-Dateien, die seit Version 6 möglich ist. Weitere Werkzeuge werden gerne auch als »SWF-Hacker« bezeichnet. Hierbei handelt es sich um Programme, welche die Struktur einer SWF-Datei vom ActionScript-Code bis hin zu den verwendeten Medien analysieren und die Inhalte bearbeiten und extrahieren können. Dabei gibt es viele legale Gründe, warum es sinnvoll sein kann, den Inhalt einer SWF-Datei zu ermitteln. Es sollte Ihnen aber klar sein, dass Sie dies nur bei Ihren eigenen SWF-Dateien bedenkenlos machen dürfen. Wenn Sie z.B. die Quelle (FLA-Datei) eines Projektes verloren haben, dann können Ihnen einige der in den Tabellen aufgelisteten Programme weiterhelfen.
18.4.2 Eigenständige Anwendungen und Bildschirmschoner
Viele Anwendungen nutzen Flash nicht nur im Internet, sondern auch für Offline-Anwendungen (z.B. auf CD-ROM) oder interaktive Bildschirmschoner. Leider sind die Fähigkeiten von Flash in diesem Bereich recht knapp bemessen, so dass hier ein reger Markt für nützliche Zusatzwerkzeuge entstanden ist. Von Bildschirmschoner-Generatoren bis hin zu Datenbankschnittstellen ist fast alles verfügbar. So ist es in vielen Fällen nicht mehr unbedingt notwendig, für CD-ROM-Produktionen und Ähnliches auf umfangreichere Autorensysteme wie den Macromedia Director oder Programmiersprachen wie C++ zurückzugreifen.
Die beiden populärsten Helfer, um Flash-Anwendungen zu eigenständigen und vollwertigen Programmen zu machen, sind FlashStudio Pro (http://www.multidmedia.com/software/flashstudio/) und SWFStudio (http://www.northcode.com/swfstudio/). Welches sich von beiden besser eignet, hängt dabei ganz maßgeblich vom Projekt ab und sollte frühzeitig getestet werden!
Sollten Ihnen die Fähigkeiten der Zusatzwerkzeuge nicht ausreichen, dann können Sie unter Windows auf die ActiveX-Steuerung vom Flash Player zurückgreifen und Flash so mit beliebigen anderen Technologien wie Visual Basic oder Visual C++ verbinden. Sofern ActiveX-Steuerungen verarbeitet werden, geht dies mit fast jeder Technologie. Viele der Zusatzwerkzeuge machen sich ohnehin genau diese ActiveX-Steuerung zunutze (siehe Java, JavaScript und ActiveX ab Seite 552).
Hybride Medien
Eine besondere Fähigkeit von Flash ist, dass die fertigen Anwendungen hybrid eingesetzt werden können. Das bedeutet, dass ein Flash-Film, der offline abspielt, weiterhin auf Online-Medien zugreifen darf. Im Klartext: Sie können mit Flash z.B. eine Anwendung auf CD-ROM oder einen Bildschirmschoner erzeugen, die sich mit den aktuellsten Informationen über eine Internetverbindung selbstständig versorgen.
|