Technieken om bundelgrootte te verkleinen
Pas verschillende technieken toe om de omvang van uw applicatiebundels te beperken, waaronder tree-shaking en code splitting.
Technieken om bundelgrootte te verkleinen is een gratis Architectuur van micro-frontends met Module Federation-les op CoddyKit. Dit is les 2 van 4. Je kunt de volledige les hieronder gratis lezen en daarna in de browser praktisch oefenen met een ingebouwde code-editor en een AI-begeleider die 24/7 beschikbaar is. Deze les maakt deel uit van het leertraject Architectuur van micro-frontends met Module Federation. Je voortgang wordt gesynchroniseerd op het web en in de CoddyKit-app. De cursus Architectuur van micro-frontends met Module Federation bevat in totaal 4 lessen.
Waarom de bundelgrootte belangrijk is
Is het je weleens opgevallen dat een website lang nodig heeft om te laden? Vaak is de omvang van de bijbehorende "bundel" een belangrijke oorzaak!
Een bundel bevat alle code en assets van je applicatie, verpakt in één of meer bestanden. Grotere bundels betekenen dat er meer gegevens moeten worden gedownload, waardoor je app trager wordt, vooral bij tragere verbindingen of op mobiele apparaten.
In je Webpack-bundel
Wanneer je een webapplicatie bouwt met tools zoals Webpack, combineert deze al je JavaScript, CSS, afbeeldingen en andere bestanden. Deze gecombineerde uitvoer noemen we een bundel.
Zie het als het inpakken van een koffer voor een reis. Je wilt alles meenemen wat je nodig hebt, maar je wilt de koffer ook zo licht en hanteerbaar mogelijk houden!
Tools om bundels te analyseren
Voordat je gaat optimaliseren, is het belangrijk om te weten waardoor je bundel groot wordt. Webpack biedt tools waarmee je de inhoud ervan zichtbaar kunt maken.
- Webpack Bundle Analyzer: Een populaire plugin die een interactieve treemapweergave van de inhoud van je bundel maakt.
- Source Map Explorer: Helpt je te begrijpen hoeveel de oorspronkelijke broncode bijdraagt aan de omvang.
Deze tools laten zien welke modules en afhankelijkheden de meeste ruimte innemen.
Ongebruikte code verwijderen
Tree-shaking, ook wel "dead-code-eliminatie" genoemd, is een krachtige optimalisatietechniek. Hierbij wordt code uit je uiteindelijke bundel verwijderd die je applicatie niet daadwerkelijk gebruikt.
Stel je een boom voor waarvan slechts bepaalde takken vruchten dragen. Tree-shaking zaagt de dode takken (ongebruikte code) af om de boom lichter en efficiënter te maken.
Tree-shaking effectief maken
Om tree-shaking te laten werken, moet je code de ES2015-modulesyntaxis (import en export) gebruiken. Webpack analyseert deze afhankelijkheden vervolgens.
Je kunt Webpack laten weten dat een module geen neveneffecten heeft (wat betekent dat het importeren ervan de globale status niet verandert) door "sideEffects": false toe te voegen aan je package.json of modulespecifieke configuratie. Zo weet Webpack dat het veilig is om ongebruikte exports te verwijderen.
Je code opsplitsen
Code splitting is een andere belangrijke techniek. In plaats van één enorme bundel wordt je applicatie opgesplitst in kleinere chunks die op aanvraag worden geladen.
Dit betekent dat gebruikers alleen de code downloaden die ze nodig hebben voor de huidige weergave of functie, waardoor de eerste laadtijd veel korter wordt. Andere delen van de app kunnen later worden geladen terwijl de gebruiker navigeert.
Code splitting implementeren
De meest gebruikelijke manier om code splitting te implementeren is met dynamische import()-instructies. Hiermee geef je Webpack opdracht om een afzonderlijke bundel voor de geïmporteerde module te maken.
Hier is een eenvoudig voorbeeld:
function greet() {
import('./hello').then(module => {
// Assuming 'hello.js' exports a default function
module.default();
});
}
// In hello.js:
// export default () => console.log("Hello from a separate chunk!");Code verkleinen met minificatie
Naast het verwijderen van ongebruikte code kunnen we de overgebleven code ook kleiner maken. Bij minificatie worden overbodige tekens, zoals witruimte, verwijderd en variabelenamen ingekort.
Compressie (zoals Gzip of Brotli) verkleint de bestandsgrootte verder wanneer bundels via het netwerk worden overgedragen. In productiemodus worden deze stappen vaak automatisch door Webpack uitgevoerd.
Verder dan code: assets optimaliseren
De grootte van een bundel gaat niet alleen over JavaScript. Grote afbeeldingen, lettertypen of andere assets kunnen je app ook onnodig groot maken.
- Afbeeldingen optimaliseren: Comprimeer afbeeldingen, gebruik moderne indelingen (WebP) en laad afbeeldingen buiten beeld lazy.
- Lettertypen optimaliseren: Beperk lettertypen tot de tekens die je nodig hebt.
- Lazy laden: Laad componenten of routes pas wanneer ze bijna worden weergegeven (dit wordt in de volgende les uitgebreider behandeld).
Je app optimaliseren
Welke van de volgende technieken is bedoeld om de bundelgrootte te verkleinen door ongebruikte code tijdens het bouwproces te verwijderen?
Samenvatting en volgende stappen
Goed gedaan! Je hebt belangrijke technieken geleerd om de bundelgrootte van je applicatie te verkleinen.
- Tree-shaking verwijdert ongebruikte code.
- Code splitting splitst bundels op in kleinere chunks die op aanvraag worden geladen.
- Minificatie en compressie verkleinen bestanden verder.
Door deze technieken toe te passen, zorg je voor een snellere en efficiëntere ervaring voor je gebruikers. Hierna bekijken we strategieën voor caching!
Leer JavaScript met een AI-tutor — gratis
Schrijf echte code en voer die uit in je browser, krijg direct hulp van een AI-tutor die 24/7 beschikbaar is en ga verder waar je gebleven bent op het web of in de app.
- Cursussen
- 12
- Lessen
- 48
Veelgestelde vragen
Is de les “Technieken om bundelgrootte te verkleinen” gratis?
Ja — de volledige tekst van “Technieken om bundelgrootte te verkleinen” kun je hier gratis op het web lezen. Als je interactief wilt oefenen met een ingebouwde code-editor en een AI-begeleider die 24/7 beschikbaar is, en de rest van de cursus Architectuur van micro-frontends met Module Federation wilt ontgrendelen, kun je upgraden naar CoddyKit PRO. De cursus Architectuur van micro-frontends met Module Federation bevat in totaal 4 lessen.
Wat leer ik in “Technieken om bundelgrootte te verkleinen”?
Pas verschillende technieken toe om de omvang van uw applicatiebundels te beperken, waaronder tree-shaking en code splitting. Je oefent met Architectuur van micro-frontends met Module Federation door code rechtstreeks in de browser uit te voeren. Een AI-begeleider die 24/7 beschikbaar is beantwoordt je vragen terwijl je de les doorwerkt.
Heb ik ervaring nodig om met Architectuur van micro-frontends met Module Federation te beginnen?
Ervaring vooraf is niet nodig. Architectuur van micro-frontends met Module Federation op CoddyKit is opgebouwd voor beginners tot gevorderden, zodat je hier of bij het begin kunt starten en in je eigen tempo kunt leren. Dit is les 2 van 4.
Hoe lang duurt de les “Technieken om bundelgrootte te verkleinen”?
De meeste lessen van CoddyKit duren ongeveer 5–10 minuten. Elke les is kort en interactief, zodat je gestaag vooruitgaat en op het web en in de app precies verdergaat waar je was gebleven.
Kan ik code schrijven en uitvoeren in deze les over Architectuur van micro-frontends met Module Federation?
Ja. Elke les over Architectuur van micro-frontends met Module Federation bevat een ingebouwde code-editor, zodat je rechtstreeks in je browser echte code kunt schrijven en uitvoeren en direct feedback van AI krijgt — lokale installatie is niet nodig.
Alle lessen in deze cursus
- Micro Frontends lazyloaden
- Technieken om bundelgrootte te verkleinen
- Cachingstrategieën
- Micro frontends vooraf ophalen en laden