前端构建工具对比 webpack、vite、esbuild等

人类和动物最大的区别是会使用工具,工具的作用就是提升我们的生产效率,同样,随着前端工程化的演进,伴随着一些优秀的工程化的生产效率工具,今天就来聊一聊,前端工程中的构建工具。

前端构建工具按照功能可以分为如下两大类:

  • 转译 - 将高级语法转换为低级的语法结构,把浏览器不能识别的文件,转换成浏览器能识别的文件;
  • 打包 - 将项目中的更重资源文件(如 html,css,json 等文件)打包压缩优化成想要的结果。

打包工具

工具名称 底层实现语言 优点 缺点 github star
webpack js 1. 作用:将多个模块打包成一个或多个文件,并对文件进行优化压缩,提高页面的加载速度和体验 2. 支持 CommonJS、AMD、ES6 等模块化规范; 3. 生态丰富,有丰富的插件系统 1. 构建速度较慢; 2.打包体积大; 3.上手难度大,需要复杂的配置,依赖项管理比较复杂; 63.9K
vite ts 相比webpack 更快的打包速度,易上手,简单,更快的开发体验; 1. 对旧版本的浏览器的兼容不好,因为它是基于ES模块化进行开发的; 2. 生态相比webpack 来说没那么成熟 62.6k
parcel js 比 vite 还简单,自动化无需配置,号称零配置 生态弱,缺少一些高级功能 42.9k
esbuild go 最快,官方给出的速度对比是其他工具的近百倍 配置灵活度低,生态较弱 36.7k
gulp js 基于node.js 可以跨平台运行 ,插件机制扩展性强,非常灵活 1.它没有模块化,属于 jquery 的时代; 2.配置复杂、功能少,因为过于灵活反而考验开发者的经验和技能 32.8k

转译工具

工具名称 作用
babel 将ES6 和更高级的语法转换为 ES5
tsc 将ts 文件转译成js 文件
相关推荐
mayaairi2 分钟前
JS DOM与事件处理完全指南
服务器·前端·javascript
恋猫de小郭15 分钟前
Firebase 如何让全球 Android 和 Flutter 开发者集体 Build Fail
android·前端·flutter
墨白曦煜16 分钟前
智能体架构范式总结(React、Plan-And-Solve、Reflection)
前端·react.js·前端框架
qq_4260039619 分钟前
多语言新增语种全量测试策略的测试范围
前端·javascript·python·自动化
frjc30 分钟前
Node.js 与 npm 极简安装教程
前端·npm·node.js
IMPYLH31 分钟前
HTML 的 <main> 元素
前端·html
深念Y33 分钟前
微服务抽取路线图:从胖单体到 ARM 集群
前端·arm开发·数据库·后端·微服务·云原生·架构
雪芽蓝域zzs1 小时前
Vue3 + Vite本地模拟数据(读取 JSON 数据)
前端
亿元程序员1 小时前
还有高手?用Shader让图片中的3D圆环转起来!
前端
灯澜忆梦1 小时前
【基于GO的Web开发14】gin请求重定向
前端·后端·golang·gin