Gulp與WebPack有區別嗎?如果有,有什麼區別?

Gulp與webpack有區別嗎?如果有,有什麼區別?
可以這麼說,它們既有區別,也有相似…

先來具體看一下它們不同的概念:

(1)Gulp:

       Gulp是一個自動化構建工具,強調的是前端開發的流程,通過配置一系列的task,定義task處理的事物,然後定義執行順序,來讓Gulp執行task,從而構建前端項目的流程,說白了就是用來打包項目。

       不管做什麼功能,都有一個統一的接口進行管理,必須去註冊一個任務,然後去執行,這也是它的特點之一,即“任務化”。

(2)WebPack:

       WebPack是一個前端模塊化方案,側重模塊打包,把開發中的所有資源(圖片、js文件、css文件等)都看成模塊,通過loader(加載器)和plugins(插件)對資源進行處理,打包成符合生產環境部署的前端資源,Gulp也可以配置seajs、requirejs甚至webpack的插件。

       它會分析你的項目結構,找到JS模塊以及那些瀏覽器不能夠直接運行的擴展語言(如:TypeScript等),然後將其轉換和打包爲合適的格式供瀏覽器使用。它最大的優點就是“模塊化”(萬物皆模塊)。

【總結】
相同點

  • 都可以對文件進行合併與壓縮(JS、CSS)。

不同點

  • Gulp是構建工具,可以配合各種插件做css.壓縮等,解放了雙手,實現了自動化。

  • Gulp嚴格上講,它旨在規範前端開發流程,不包括模塊化功能。

  • WebPack是文件打包工具,可把各個項目的css.壓縮文件等打包合併成一個或多個文件,主要就是應用於模塊化操作。

  • WebPack更是明顯強調模塊化開發,而那些文件壓縮合並、預處理等功能,只是他附帶的功能。

  • WebPack整合了Gulp的優點,當我們想要一步一步來配置自己的環境時,那麼gulp就可以滿足我們的需要,但是如果我們想一下就配備大部分我們所需要的環境,那麼此時可以選用WebPack,前提是寫好package.json。

  • gulp與webpack上是互補的,還是可替換的,取決於你項目的需求,它們可不存在衝突的關係哈。

  • Gulp與WebPack可以組合起來使用,以便快速編譯(依靠Gulp豐富的組件可以讓JS與HTML實現聯動,從而控制WebPack應用程序,達到高自動化)

  • 有時間糾結這個,老老實實敲會代碼不好嗎(^ _ ^)~

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章