Home

minifikaci

Minifikace je proces zmenšení velikosti souborů tím, že se ze zdrojového kódu odstraní zbytečné znaky (mezery, konce řádků, komentáře) a v některých případech i zkrátí názvy identifikátorů, aniž by došlo ke změně chování programu. Cílem je snížit objem kódu pro rychlejší doručení a načítání v klientském prostředí. Minifikace se nejčastěji používá v webovém vývoji u HTML, CSS a JavaScript, ale týká se i JSON, XML a dalších textových formátů.

Principy a techniky zahrnují odstranění bílého prostoru a nepotřebných znaků, zkrácení názvů identifikátorů v bezpečných kontextech

Minifikace by měla být doprovázena generováním souvisejícího mapovacího souboru (source map), který umožňuje ladění v původním,

Mezi hlavní nástroje patří minifikátory pro JavaScript (Terser, UglifyJS), CSS (CSSNano), HTML (HTMLMinifier) a build systémy

(tzv.
mangling),
slučování
souborů
a
optimalizaci
syntaktických
struktur,
které
nezmění
funkční
chování.
V
některých
případech
se
uplatní
i
pokročilejší
techniky,
jako
odstranění
nepoužívaného
kódu
nebo
zjednodušení
výrazů.
Pro
JavaScript
mohou
minifikátory
dále
provádět
transformace,
které
zjednodušují
volání
funkcí
a
konstanty,
aniž
by
změnily
výsledky.
čitelném
zdroji.
Její
efekt
je
dvousečný:
snižuje
velikost
přenášených
dat
a
zrychluje
načítání,
ale
zvětšuje
dobu
sestavení
a
snižuje
čitelnost
zdrojového
kódu.
Proto
je
běžnou
praxi
ukládat
minimální
verzi
pro
produkci
a
zachovat
plné
zdrojové
soubory
pro
vývoj.
(Webpack,
Rollup,
Parcel).
Pro
dopravu
dat
se
často
kombinuje
s
kompresí
na
úrovni
serveru
(gzip,
Brotli)
pro
ještě
větší
úsporu.
Rozdíl
mezi
minifikací
a
obfuscací:
minifikace
zachovává
funkční
chování
a
jen
snižuje
velikost,
zatímco
obfuscace
cíleně
ztěžuje
čitelnost
kódu.