Mit JavaScript Minifiern Netzwerkressourcen schonen

Packer
Kommentare

Eines der größten Probleme bei der Webentwicklung ist der Umgang mit Ressourcen. Und nein, Sie erfahren heute nichts über Green IT und wie Sie die Stromkosten Ihrer Server durch Webentwicklung spürbar senken. Stattdessen erfahren Sie in diesem Artikel, wie Sie schonender mit der Ressource Netzwerk umgehen können.

Dean Edwards entwickelte mit Packer ein weiteres Werkzeug zur Komprimierung von JavaScript-Quellcode. Im Normalfall gelangen Sie über die Webseite dean.edwards.name/packer/ zu diesem Werkzeug. Die Seite besteht aus einem Formular, in das Sie Ihren Quellcode einfügen können und durch einen Klick auf den Button komprimieren lassen. Die Eingabe wird direkt im Browser komprimiert und muss nicht erst zum Server gesendet werden. Der komprimierte Quellcode wird Ihnen auf der Seite in einer Textarea zum Kopieren zur Verfügung gestellt. Mit den Standardoptionen werden, wie bei UglifyJS und JSMin auch, die Kommentare und Zeilenumbrüche entfernt.

Bei der jQuery-Bibliothek führt diese Komprimierung bei einer Ausgangsgröße von 240 KB zu einem Ergebnis von einer Größe von 128 KB. Die Ausgabe dieses Werkzeugs gleicht also dem Ergebnis von JSMin und UglifyJS ohne weitere Optionen. Wie aber schon bei UglifyJS, können Sie auch bei Packer auf eine zusätzliche Option zugreifen, die für eine noch bessere Komprimierung sorgt und den Quellcode obfuscatet. In diesem Fall werden die Variablen verkürzt. Mit dieser Option verringert sich die Dateigröße auf 108 KB. Die erzielte Größe des Resultats liegt damit etwas über dem Ergebnis von UglifyJS.

Der entscheidende Nachteil von Packer ist, dass dieses Werkzeug in erster Linie als Webseite existiert und Sie Ihre JavaScript-Dateien per Copy and Paste in die Seite einfügen müssen, um sie zu komprimieren. So müssen Sie sich auch selbst um das Zusammenfügen mehrerer Dateien kümmern. Um diesen Nachteil auszugleichen und Ihnen die Möglichkeit zu bieten, Packer auf der Kommandozeile einzusetzen und so die Komprimierung Ihrer Applikation über eine Continuous-Integration-Plattform zu automatisieren, existieren mehrere Portierungen von Packer. So können Sie Packer als .NET-, Perl- oder PHP-Applikation installieren und auf Ihrem System betreiben.

Eine weitere interessante Portierung existiert für Node.js. Packer ist als Modul für Node.js verfügbar, lässt sich als solches über die Kommandozeile installieren und steht Ihnen dann auf dieser als eigenständiges Kommando zur Verfügung:

npm install -g packer

Packer verfügt auf der Kommandozeile über denselben Funktionsumfang wie auch auf der Webseite. Das bedeutet, Sie können eine Datei komprimieren, indem Sie überflüssige Zeilenumbrüche und die Kommentare entfernen lassen. Die Komprimierung können Sie mit der Option –shrink weiter verbessern, indem Sie die Variablennamen obfuscaten lassen. Außerdem können Sie die Eingabe in Base62 kodieren lassen. Der folgende Code zeigt die Verwendung von Packer:

packer -i jquery-2.0.3.js -s true -o jquery-2.0.3.min.js

Diese Implementierung von Packer unterstützt allerdings nur die Komprimierung von einer Datei. Das bedeutet für Sie, dass Sie mehrere Dateien zu einer Datei zusammenfassen müssen, bevor Sie diese komprimieren können.

Aufmacherbild: hand open cardboard box. portrait from inside the box von Shutterstock / Urheberrecht: Odua Images

Unsere Redaktion empfiehlt:

Relevante Beiträge

Meinungen zu diesem Beitrag

X
- Gib Deinen Standort ein -
- or -