我们为什么需要构建工具

我们总说webpack是打包工具。为什么要有webpack,webpack帮我们做了那些事情?

在大型的项目中,浏览器端的模块化存在的问题:

效率问题:精细的模块化(更多的js文件)带来大量的网络请求,降低页面访问效率。

兼容性问题:浏览器端不支持CommonJs模块化,而很多第三方库使用了CommonJs的模块化。

这让开发大型项目称为一个难题,我们要考虑很多非业务问题,执行效率,兼容性,代码的可维护拓展性,团队协作,测试等工程问题。

其根本原因在于我们在开发代码和运行代码所期望的不一致

开发代码时我们期望:

  • 模块划分的越精细越好,
  • 不需要考虑兼容性问题
  • 支持多种模块化标准

运行代码时我们期望:

  • 文件越少越好,减少网络请求
  • 文件体积越小越好,传输速度快
  • 兼容所有浏览器

我们期望有一个工具,我只专注开发时写的代码就可以了,开发完成后使用工具帮助我们转换成运行时我们所期望的(压缩过后代码及其丑陋,文件数量极少,兼容浏览器)。这样的工具叫--构建工具

常见的构建工具:

webpack

gulp

browserify

grunt

...

原文地址:https://www.cnblogs.com/jiaobaba/p/13877763.html