Vite или webpack
Вопрос
Чем Vite отличается от webpack? Почему новые проекты чаще начинают на Vite?
Попробуйте сами
Ответьте вслух за 2 минуты, как на собесе. Потом сверьтесь с тезисами: что прозвучало, а что нет.
Показать ответ и разбор
Коротко
Что должно прозвучать в ответе
webpack в dev собирает бандл целиком
Vite отдаёт нативные ES-модули по запросу
зависимости пребандлятся заранее
быстрый старт и HMR
в прод Vite делает полноценную оптимизированную сборку
webpack оправдан при сложной legacy-конфигурации или Module Federation
Что могут спросить следом
- Почему в dev на Vite много сетевых запросов и это нормально?
- Что такое пребандлинг зависимостей?
- Как бы ты переносил проект с webpack на Vite?
Разбор
В dev webpack собирает бандл целиком до старта сервера, и на большом проекте это десятки секунд. Vite отдаёт браузеру исходные ES-модули по запросу и преобразует только то, что открыто, а зависимости заранее пребандлит быстрым esbuild. Поэтому старт и HMR почти мгновенные.
Для продакшна Vite делает обычную оптимизированную сборку с tree shaking и code splitting. Его выбирают за скорость, простую конфигурацию и то, что на нём построены Vitest и многие фреймворки. webpack остаётся там, где много своих лоадеров и плагинов, Module Federation или большая legacy-конфигурация, переносить которую дорого.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.