前端进程的进化
stage-0: 只有js,只对js进行精简/混淆/压缩
closure compiler
stage-1: 随着Node.js的出现,使用Node.js做压缩
uglify-js
stage-2: 随后从js的压缩延伸到css的压缩,js lint, 自动测试,文件合并等
grunt
stage-3: 为了统一模块化规范AMD/CMD/CommonJs
browserify
stage-4: 前端框架的兴起,最初只是基于js语言,不需要编译
Backbone.js mvc
AngularJS Vue.js mvvm
stage-5: React的出现,jsx可以吧html和js混合起来写,js变成中间语言,变得需要编译
CoffeeScript Less Sass
stage-6: js标准ECMAScript变化很快,为了浏览器能支持,需要转换
Babel(node) es6 -> es5
JSXTransformer.js -> browser.js (browser edition)
stage-7: 自动化工具出现,grunt被gulp取代
gulp webpack watch