¿Browserify uglify via script de nodo o línea de comando?

Parece que en muchos lugares los profesionales están construyendo sus proyectos utilizando un script node.js que involucra tanto gulp como gruñido. Lo que no puedo entender, sin embargo, es ¿por qué el método de script es preferible? Al pasar de la versión de línea de comandos a la versión de script, agrega otros paquetes en: ie gulp-uglify, vinyl-source-stream y vinyl-buffer. ¿No sería más seguro a largo plazo utilizar un método con la menor cantidad de dependencias? Tomemos, por ejemplo, el siguiente método de línea de comando que estoy usando actualmente:

browserify entry.js | uglifyjs > bundle.js 

Esto se basa en browserify y uglifyjs, y no tengo las dependencias adicionales de gulp, gulp-uglifyjs, etc … y no tengo que preocuparme por la versión de gulp-uglifyjs relativa a los uglifyjs directos a las npm. Ahora ve la siguiente versión:

 var browserify = require('browserify'); var gulp = require('gulp'); var uglify = require('gulp-uglify'); var source = require('vinyl-source-stream'); var buffer = require('vinyl-buffer'); gulp.task('browserify', function() { return browserify('./source/scripts/app.js') .bundle() .pipe(source('bundle.js')) // gives streaming vinyl file object .pipe(buffer()) // <----- convert from streaming to buffered vinyl file object .pipe(uglify()) // now gulp-uglify works .pipe(gulp.dest('./build/scripts')); }); 

Parece mucho más complejo, pero ¿por qué motivo sería esta una forma más eficiente y segura de construir un proyecto javascript? Gracias.

No es. La línea de comando sigue siendo la forma más segura. Y npm permite la creación de un script de forma predeterminada. La gente se gulp o grunt u otras herramientas similares para la Continuous Integration . Uglify es algo que solo necesita una vez para fines de producción, pero diga que desea ejecutar sus tests cada vez que uno de sus archivos cambia, o si desea usar JSLint . Bueno, sé que muchos de estos complementos brindan soporte de Continous Integration , pero no todos lo hacen. Gulp , `Grunt“` y otras herramientas de construcción similares vienen con la solución lista para usar.

Pero veo a más y más personas moviéndose de gulp , npm a npm básico y apoyo totalmente este movimiento.