← Назад в словарь

Tree shaking

Tree shaking — стряхивание дерева

Суть в одном предложении

Tree shaking уменьшает размер бандла, удаляя код, который фактически не используется.

Краткое определение

Tree shaking — оптимизация сборки, при которой бандлер исключает неиспользуемые части модулей.

Оригинал и перевод

  • Язык: английский
  • Оригинал: Tree shaking
  • Буквальный перевод: стряхивание дерева

Синонимы и варианты написания

  • Dead code elimination
  • Удаление мёртвого кода

Происхождение

Термин появился в экосистеме JavaScript с распространением ESM и статического анализа импортов.

Где используется

  • Frontend-сборка
  • Бандлеры (Webpack, Rollup, Vite)
  • SPA и SSG проекты

Когда это важно

Особенно важно при больших зависимостях и критичных требованиях к размеру и скорости загрузки.

Подробное объяснение

Tree shaking работает эффективно, если:

  • используются import/export;
  • модули не имеют побочных эффектов;
  • импорты точечные, а не «всё сразу».

При неправильной структуре пакетов оптимизация не срабатывает.

Аналоги и связанные термины

  • Minification
  • Side effects
  • Code splitting
  • Bundler

Пример использования

«Перешли на ESM — tree shaking убрал половину неиспользуемого кода.»

Мини-FAQ

  • Tree shaking — это минификация? Ответ: Нет, минификация сжимает код, tree shaking удаляет лишний.
  • Работает ли с CommonJS? Ответ: Ограниченно или вовсе не работает.

Смотри также

  • Bundler
  • Code splitting