Minifikace
V informatice je minifikace proces odstraňování nepotřebných prvků a přepisování kódu za účelem zmenšení velikosti souboru. Běžně se provádí u zdrojů webových stránek, například u souborů HTML, CSS a JavaScript. Zmenšení velikosti webových zdrojů umožňuje rychlejší přenos souborů, takže se webové stránky načítají rychleji.
Existuje několik způsobů, jak minifikovat data. Nejzákladnější je odstranit komentáře, nepotřebné mezery a zalomení řádků znaky (nového řádku). Komentáře a prázdné znaky sice pomáhají zvýšit čitelnost kódu, ale prohlížeč je ignoruje. Tyto prvky proto lze před publikováním bezpečně odstranit. Další metodou je minimalizovat kód potřebný pro jednotlivé příkazy. V CSS se toho často dosahuje převodem dlouhého zápisu CSS na zkrácený zápis CSS. Například definice margin může mít v dlouhém zápisu sedm řádků, ale ve zkráceném zápisu pouze jeden řádek. V JavaScriptu lze dlouhé názvy proměnných nahradit kratšími názvy často jediným (znakem.
Níže je příklad kódu CSS před minifikací a po ní. Všimněte si, že komentáře, mezery, zalomení řádků a nepotřebné středníky jsou odstraněny. Kód je také převeden z dlouhého zápisu CSS na zkrácený.
Standardní kód CSS
img.left /* float left 400px image */
{
float: left;
max-width: 400px;
margin-top: 8px;
margin-right: 30px;
margin-bottom: 12px;
margin-left: 0px;
}
Minifikovaný kód CSS
img.left{float:left;max-width:400px;margin:8px 30px 12px 0}
Pokročilé algoritmy minifikace mohou velikost souboru snížit ještě více. Minifikátor CSS může například najít a odstranit duplicitní řádky v souboru CSS. Může také spojit podobné definice CSS do jediného příkazu. Minifikátor JS může dokonce přepsat funkce JavaScriptu tak, aby byly efektivnější.
Minifikace kódu často ušetří jen několik kilobajtů. Standardní soubor CSS může mít například velikost 50KB a minifikovaná verze může mít 40KB. Při zrychlování načítání stránek však záleží na každém kilobajtu. Cílem dobrého minifikátoru je co nejvíce zmenšit velikost souboru, aniž by to mělo jakýkoli dopad na způsob, jakým je kód analyzován nebo zpracováván. Bez ohledu na použitý minifikátor vývojáři obvykle uchovávají neminifikovanou verzi kódu pro budoucí úpravy.
Minifikace vs. komprese
Ačkoli minifikace i komprese souborů zmenšují velikost souboru, nejsou totožné. Minifikace jednoduše upravuje text, zatímco komprese souborů kompletně přepisuje binární kód v souboru. Komprimovaný soubor musí být dekomprimován nástrojem pro dekompresi souborů, aby jej bylo možné přečíst jako textový soubor. Mnoho webových stránek používá kombinaci minifikace a komprese souborů pomocí „gzip“, aby co nejvíce zmenšilo velikost webových zdrojů.
Otestujte své znalosti