- 设计理念
- Grunt以”配置“为主,target隐含了plugin的动作;
- Gulp以”流“为主,没有target,每个task可以看作是一个(实际上可以是一组)流的动态流动,从src到dest。
- 串行并行
- Grunt的每个trask或者target执行完毕之后,所有的动作都是commit到磁盘的,即可以期望在磁盘上能看到dest文件。
- Gulp的流在task没有将其return之前,不能期望dest中有文件,尤其是一个task调用多个gulp.src时,要么最后用merge-stream合并return,要么就改造task为多个task。
- 依赖关系
- Grunt可以在task内run其它task,像普通程序的函数调用。所以依赖关系比较好组织。
- Gulp的start已经不推荐使用了,强迫用户按照“流”的思路改造程序。依赖关系只剩下定义task中的deps参数了。而这个deps也会并行执行,所以,如果他们之间也有依赖关系,要非常注意。
没有评论:
发表评论