跳到主要内容

您应该选择哪种JavaScript构建工具?

Grunt是一个基于Node.js的任务运行器,最常用于前端项目。 Gulp是一个轻量级构建工具,使用Node的流API来加速和简化复杂的构建过程。

我们排列了两个JavaScript构建工具,并揭示了您在下一个项目中应该使用哪些工具。

哲学

Grunt构建主要由类似JSON的配置而不是代码组成。您可以为Gruntfile中的一系列预打包构建任务提供选项,而不是编写程序化构建脚本。

Gulp采用相反的方法,倾向于代码优于配置。创建一个有效的Gulpfile只需要几个简单的方法。由于其流API,构建速度非常快。

插件

Grunt拥有一个庞大的,不断发展的社区。目前有近2,300个插件可用,支持静态资产编译和部署等常见任务。

Gulp仍然有一个相对年轻的生态系统,但已经有大约300个插件已经发布到npm。 Gulp的流API的核心优势是插件体积小,易于连接。

This article first appeared in The JavaScript Handbook. It's on sale now for only £14.99

本文首次出现在JavaScript手册中。它现在只售14.99英镑

速度

任务默认情况下同步运行。每个任务都单独配置为与文件系统交互。如果您的项目变得太大,这种I / O密集的方法可能会导致性能下降。 Grunt插件试图改善这种情况,但这并不理想。

任务默认情况下同步运行。每个任务都单独配置为与文件系统交互。如果您的项目变得太大,这种I / O密集的方法可能会导致性能下降。 Grunt插件试图改善这种情况,但这并不理想。

脚手架

Yeoman是一个非常流行的JavaScript脚手架工具,它为Grunt提供了一流的支持。绝大多数Yeoman生成器创建了一个包含Gruntfile的项目。甚至还有一个Yeoman发电机可以支架Grunt插件。

Yeoman团队在他们的官方发电机中使用Gulp进行原型设计。 Yeoman在创建许多Grunt插件方面发挥了重要作用,因此Gulp可能会重复这个过程。就像Grunt一样,有一个发电机可以支架样板Gulp插件。

判决书

Grunt团队计划对Gulp实施类似的虚拟文件转换,因此两者之间的选择将越来越取决于您是否更喜欢构建过程的配置或代码。

除非您的构建由具有少量JavaScript经验的前端设计人员修改,否则Gulp从长远来看可能是一个更受欢迎的选择。

Mark Dalgleish

Mark Dalgleish是JavaScript,前端开发和Node.js的专家。在Twitter上关注他@markdalgleish。这篇文章最初出现在JavaScript手册

像这样?读这个!



翻译字数超限