Ein Bundle ist das JavaScript, das dein Build-Tool paketiert und an den Browser ausliefert. Es wächst vor allem durch Abhängigkeiten, duplizierten Code und das Ausliefern von Code, den die Seite noch gar nicht braucht.
Ein Bundle ist das JavaScript, das dein Build-Tool paketiert und an den Browser ausliefert. Es wächst vor allem durch Abhängigkeiten, duplizierten Code und das Ausliefern von Code, den die Seite noch gar nicht braucht.
lodash für eine einzige Funktion zu importieren, zieht das gesamte Paket herein.import _ from "lodash"; // ~70KB — the entire library
import debounce from "lodash/debounce"; // ~2KB — just the function you need
Die Bytes sind das kleinere Problem; das Parsen und Ausführen von JS ist das große. Der Browser muss jedes Byte herunterladen, dann parsen, kompilieren und auf dem Main Thread ausführen — und das ist auf einem Mittelklasse-Handy weitaus langsamer als auf einem Laptop. Schweres JS verzögert die Interaktivität und verschlechtert direkt INP und LCP.
„Nimm einfach die Bibliothek dazu“ ist der Weg, auf dem Apps schleichend langsam werden. Interviewer wollen sehen, dass du an die Kosten pro Abhängigkeit denkst und zu Per-Funktion-Imports, Tree Shaking und Code Splitting greifst, bevor das Bundle aufbläht — zumal die Handys deiner Nutzer weit schwächer sind als deine Entwicklungsmaschine.
Eine Sammlung von IT-Interviewfragen mit ausführlichen Antworten — vom Junior bis zum Senior.
Spenden