Ответ
Task runner (например, Gulp) выполняет автоматизацию рутинных задач: минификация, транспиляция, запуск тестов. Работает с исходными файлами по одному, используя потоки (streams).
Сборщик (например, Webpack) — это система модулей, которая собирает проект в бандлы, обрабатывая зависимости между файлами. Он строит граф зависимостей и оптимизирует итоговый код.
Пример Gulp:
gulp.task('minify-js', () => {
return gulp.src('src/*.js')
.pipe(uglify())
.pipe(gulp.dest('dist'));
});
Пример Webpack:
module.exports = {
entry: './src/index.js',
output: {
filename: 'bundle.js'
}
};
Ключевое отличие: Task runner управляет задачами, сборщик — модулями и зависимостями.