Elke nacht van 22:00 tot 07:00 uur onderhouden we onze servers. Lees wat je merkt Elke nacht onderhoud, 22:00-07:00 uur. Lees meer
Bestellen
Hosting
Domeinnaam
Ondersteuning
Ontdek
Terug naar begrippenlijst

Minification

Minification is het verkleinen van code door spaties, regeleinden en commentaar weg te halen zonder de werking te veranderen.

Minification

Minification, in het Nederlands minificatie, is het verkleinen van HTML-, CSS- en JavaScript-bestanden door alles weg te halen wat de browser niet nodig heeft. Denk aan spaties, regeleinden en commentaar die er alleen voor de leesbaarheid in staan. De code doet daarna precies hetzelfde, maar het bestand is kleiner.

Een minifier gaat vaak verder dan witruimte alleen. Bij JavaScript vervangt hij lange namen van variabelen door korte en haalt hij ongebruikte code weg. Zo wordt function berekenTotaal(prijs, aantal) bijvoorbeeld function berekenTotaal(a,b). Het resultaat is voor mensen bijna onleesbaar. Daarom laat je een tool als Terser dit meestal automatisch doen bij het bouwen van je site, en bewaar je zelf de leesbare versie.

Minification en compressie vullen elkaar aan. De bibliotheek jQuery 3.7.1 is als leesbaar bestand 285 kB groot en geminificeerd 88 kB. Met gzip erbij gaat de geminificeerde versie als ongeveer 30 kB over de lijn, terwijl de leesbare versie ingepakt nog 83 kB is. Lighthouse en PageSpeed Insights waarschuwen als je CSS of JavaScript niet geminificeerd is.

Op je hosting regelt LiteSpeed Cache voor WordPress dit met de opties CSS Minify, JS Minify en HTML Minify onder Page Optimization. Die staan standaard uit. Zet ze één voor één aan, leeg daarna de cache met Purge All en controleer of je site er nog goed uitziet. Verschuift de opmaak of werkt een menu niet meer, zet dan de laatst gekozen optie weer uit.

Geschiedenis

Douglas Crockford bracht in 2001 JSMin uit, een van de eerste minifiers voor JavaScript. Het programma haalde commentaar en overbodige witruimte weg, zonder de werking van de code te veranderen. Latere tools gingen verder en gaven ook variabelen kortere namen (Wikipedia).

Belangrijke mijlpalen:

  • 2001: Douglas Crockford publiceert JSMin
  • 2007: Yahoo! brengt YUI Compressor uit
  • 2010: Mihai Bazon introduceert UglifyJS
  • 2018: Terser ontstaat als afsplitsing van uglify-es en haalt UglifyJS in 2020 in qua dagelijkse downloads
  • December 2024: Ecma International standaardiseert source maps, waarmee je geminificeerde code naar de leesbare bron terugleidt, als ECMA-426

Bronnen

  1. MDN Web Docs - Minification
  2. Chrome for Developers - Minify JavaScript
  3. Chrome for Developers - Minify CSS
  4. LiteSpeed Technologies - Page Optimization | LSCache for WordPress
  5. Wikipedia - Minification (programming)