Minification
Küçültme (Kod Boyutu Azaltma)
İşlevselliğini değiştirmeden kaynak koddan gereksiz karakterleri (boşluklar, satır sonları, yorumlar, biçimlendirme) kaldırarak daha hızlı yüklenen daha küçük dosyalar üreten süreç.
Teknik Detay
Küçültme teknikleri: boşluk kaldırma (boşluklar, sekmeler, satır sonları), yorum kaldırma, değişken adı kısaltma (mangling: backgroundColor → a), ölü kod eleme (tree shaking), ifade birleştirme, literal optimizasyonu (true → !0), fonksiyon satır içi alma. JavaScript küçültücüler: Terser (UglifyJS'nin halefi, ES6+ desteği), esbuild (Go tabanlı, 10-100× daha hızlı), SWC (Rust tabanlı). CSS küçültücüler: cssnano (PostCSS tabanlı), Lightning CSS (Rust tabanlı), clean-css. HTML küçültücüler: html-minifier-terser. Tipik boyut tasarrufu: JS %40-60, CSS %20-40, HTML %10-20 (gzip öncesi). İleri sıkıştırma (gzip/brotli) küçültme sonrası daha fazla azaltma için uygulanır. Source map (.map) küçültülmüş kodu hata ayıklama için orijinal kaynaklarla eşler.
Ornek
```javascript
// Simple CSS minifier
function minifyCSS(css) {
return css
.replace(/\/\*[\s\S]*?\*\//g, '') // remove comments
.replace(/\s+/g, ' ') // collapse whitespace
.replace(/\s*([{};:,])\s*/g, '$1') // remove around symbols
.trim();
}
// 1024 bytes → 612 bytes (40% reduction)
```