Minifizierung
In der Informatik ist Minifizierung der Vorgang, unnötige Elemente zu entfernen und Code umzuschreiben, um die Dateigröße zu reduzieren. Sie wird häufig bei Ressourcen von Webseiten wie HTML-, CSS- und JavaScript-Dateien durchgeführt. Durch die Verringerung der Größe von Webressourcen können die Dateien schneller übertragen werden, wodurch Webseiten schneller geladen werden.
Es gibt mehrere Möglichkeiten, Daten zu minifizieren. Die einfachste besteht darin, Kommentare, unnötige Leerzeichen und Zeilenumbrüche (Newline-Zeichen) zu entfernen. Kommentare und Leerzeichen machen den Code zwar besser lesbar, werden aber vom Browser ignoriert. Daher können diese Elemente vor der Veröffentlichung problemlos entfernt werden. Eine weitere Methode besteht darin, den für jede Anweisung erforderlichen Code zu verkürzen. In CSS wird dies häufig erreicht, indem ausführliches CSS in Kurzform-CSS umgewandelt wird. Beispielsweise kann eine margin-Definition in ausführlicher Form sieben Zeilen benötigen, in Kurzform jedoch nur eine Zeile. In JavaScript können lange Namen von Variablen durch kürzere ersetzt werden oft durch ein einzelnes (Zeichen.
Unten sehen Sie ein Beispiel für CSS-Code vor und nach der Minifizierung. Beachten Sie, wie Kommentare, Leerzeichen, Zeilenumbrüche und unnötige Semikolons entfernt werden. Der Code wird außerdem von ausführlichem CSS in Kurzform-CSS umgewandelt.
Standardmäßiger CSS-Code
img.left /* float left 400px image */
{
float: left;
max-width: 400px;
margin-top: 8px;
margin-right: 30px;
margin-bottom: 12px;
margin-left: 0px;
}
Minifizierter CSS-Code
img.left{float:left;max-width:400px;margin:8px 30px 12px 0}
Fortgeschrittene Algorithmen zur Minifizierung können die Dateigröße noch weiter reduzieren. Ein CSS-Minifizierer kann beispielsweise doppelte Zeilen innerhalb einer CSS-Datei finden und entfernen. Er kann auch ähnliche CSS-Definitionen zu einer einzigen Anweisung zusammenfassen. Ein JS-Minifizierer kann JavaScript-Funktionen tatsächlich umschreiben, damit sie effizienter sind.
Durch die Minifizierung von Code werden oft nur wenige Kilobyte eingespart. Eine Standard-CSS-Datei kann beispielsweise 50 KB groß sein, während die minifizierte Version 40 KB groß ist. Wenn jedoch die Ladegeschwindigkeit einer Seite verbessert werden soll, zählt jedes Kilobyte. Das Ziel eines guten Minifizierers besteht darin, die Dateigröße so weit wie möglich zu reduzieren, ohne die Art und Weise zu beeinflussen, wie der Code geparst oder verarbeitet wird. Unabhängig davon, welcher Minifizierer verwendet wird, bewahren Entwickler normalerweise eine nicht minifizierte Version des Codes zur späteren Bearbeitung auf.
Minifizierung im Vergleich zur Komprimierung
Obwohl sowohl Minifizierung als auch Dateikomprimierung die Dateigröße reduzieren, sind sie nicht identisch. Bei der Minifizierung wird lediglich der Text verändert, während bei der Dateikomprimierung der Binärcode innerhalb einer Datei vollständig neu geschrieben wird. Eine komprimierte Datei muss von einem Dienstprogramm zur Dekomprimierung von Dateien dekomprimiert werden, damit sie als Textdatei gelesen werden kann. Viele Websites verwenden eine Kombination aus Minifizierung und der Dateikomprimierung „gzip“, um die Größe von Webressourcen so weit wie möglich zu reduzieren.
Testen Sie Ihr Wissen