Sebuah bundle adalah JavaScript yang dikemas dan dikirim oleh build tool-mu ke browser. Ia membesar terutama karena dependency, kode yang terduplikasi, dan mengirim kode yang belum dibutuhkan halaman.
Sebuah bundle adalah JavaScript yang dikemas dan dikirim oleh build tool-mu ke browser. Ia membesar terutama karena dependency, kode yang terduplikasi, dan mengirim kode yang belum dibutuhkan halaman.
lodash untuk satu fungsi menarik seluruhnya.import _ from "lodash"; // ~70KB — seluruh library
import debounce from "lodash/debounce"; // ~2KB — hanya fungsi yang kamu butuhkan
Byte adalah masalah kecil; parsing dan eksekusi JS adalah masalah besar. Browser harus mengunduh, lalu memparse, mengompilasi, dan menjalankan setiap byte di main thread — dan itu jauh lebih lambat di ponsel kelas menengah daripada di laptop. JS yang berat menunda interaktivitas dan langsung memperburuk INP dan LCP.
"Tinggal tambahkan library" adalah cara aplikasi diam-diam menjadi lambat. Pewawancara ingin melihatmu memikirkan biaya per dependency dan memilih import per-fungsi, tree shaking, dan code splitting sebelum bundle membengkak — apalagi karena ponsel penggunamu jauh lebih lemah dari mesin dev-mu.
Perpustakaan pertanyaan wawancara IT dengan jawaban mendetail — dari Junior hingga Senior.
Donasi