Javascript Packer
01. Juni 2008 | In: Javascript
Für grössere Projekte nutzt man fast immer eines der gängigen Javascript Frameworks wie Prototype und Scripttaculous, jQuery oder Mootools. Diese bringen mit einigen 10 KB schon etwas Traffic auf die Leitung.
Schreibt man noch seine eignen Funktionen zum Handling der gesamte Seite, kann es schon mal passieren, das man weit über 200 KB an reinem Javascript überträgt. Das verursacht die gefürchteten Ruckler beim laden von javascriptlastigen Webseiten. Klickt der User auf ein Element, bevor das Javascript komplett geladen wurde kommt es zu unvorhergesehenen Ereignissen, da die Event-Handler noch nicht verdrahtet sind.
Um dem zumindest etwas vorzubeugen, kann man die Javascript-Dateien komprimieren. Das hat auch den angenehmen Nebeneffekt, dass das Rippen des Codes erschwert wird.
Javascript-Packer gibt es diverse. Bei eingehenden Test mit einigen meiner Bibliotheken bin ich beim YUI Compressor von Yahoo hängen geblieben. Dieser hat zwar nicht die allerbeste Packrate, auch unterstützt er kein Obfuscating, dafür hat er aber die sehr sinnvolle Option Semikolons im Code zu belassen und konnte als einziger alle meine Dateien so packen, dass sie noch problemlos weiter funktionierten.
Der Packer ist in Java geschrieben und läuft auf der Kommandozeile. Ein Aufruf wie der folgende komprimiert die Date “original.js” und speicher sie als “gepackt.js”. Als kleines Zusatzschmankerl komprimiert YUI Compressor auch noch Stylesheet Dateien.
java -jar yuicompressor-x.y.z.jar orginal.js -o gepackt.js
Zum YUI Compressor geht es hier

2 Kommentare zu Javascript Packer
Sven
14. Juni 2008 um 14:31:28
Alle die unter Windows einfach JavaScript- und CSS-Dateien komprimieren möchten, sollten vielleicht mal einen Blick auf *HasyCompressPortable* werfen:
http://code.google.com/p/hasycompress/
admin
16. Juni 2008 um 11:06:02
Wie es scheint ist HasyCompressPortale nichts anderes als eine GUI für den YUI.
Für den schnellen Compress :) allerdings durchaus nützlich.