时光回溯到2009年,CommonJS规范和NodeJS都还在襁褓之中,离Bower诞生还有三年时间,Ruby还统治着github,CoffeeScript在年底提交了第一个commit……前端
备受加载顺序,依赖关系折磨的前端开发,开始站起来试图解决日益复杂的前端开发的种种问题,RequireJS降临了。若是说NodeJS吹响了JS全栈革命的号角,那么同时发生的前端模块化革命即是RequireJS的历史使命。webpack
五年过去了,RequireJS打败了同级生LabJS,带起了中国小伙伴SeaJS。他完美地引领了前端模块化的革命,但今天看来,它有些过期了:它重浏览器端,轻打包编译,没有及时跟进包管理体系,almond没有成为标配而只是周边,配置晦涩……诞生太早的RequireJS,虽然一度成为了前端模块化的某种程度上的事实标准,但难掩其缺点。git
五年间,NodeJS成为了服务端以及脚本工具的一代翘楚,NPM的成功让你们意识到一个集中式的依赖/包管理体系的重要性,Bower应运而生,还有试图将CMD和NPM包带到前端领域,统一先后端包格式的Browserify等等,大量的前端工具爆发式地出现,WebPack是其中的(又)一款模块打包工具。github
webpack的优点一言难尽,相比其余竞争者,他的好处有web
但其最大的特色是“用着舒服,不折腾”,这是一款工具最难能难得的优势。npm
webpack官网
http://webpack.github.io/gulp
个人前端技术栈scaffold (bower+webpack+less+gulp)
https://github.com/mcfog/glimmervoid后端