摘要:宣布一個快速,零配置的應(yīng)用打包工具原文譯者今天,我非常高興地宣布,一個快速,零配置的應(yīng)用程序打包工具,我對于該工具的工作已經(jīng)持續(xù)了幾個月。性能我被激發(fā)建立一個新的打包工具的第一個原因是性能。
? 宣布 Parcel:一個快速,零配置的 Web 應(yīng)用打包工具 ?
原文:? Announcing Parcel: A blazing fast, zero configuration web application bundler ?
譯者:neal1991
welcome to star my articles-translator , providing you advanced articles translation. Any suggestion, please issue or contact me
LICENSE: MIT
今天,我非常高興地宣布 Parcel,一個快速,零配置的 Web 應(yīng)用程序打包工具,我對于該工具的工作已經(jīng)持續(xù)了幾個月。 去 Github上看看吧!
為了解決我在 Browserify 和 Webpack 等現(xiàn)有模塊打包工具中遇到的兩個主要問題:性能和配置經(jīng)驗,我開始研究 Parcel。
特性? 非???/strong>的打包時間 - 多核編譯,以及文件系統(tǒng)緩存,這樣即使在重新啟動后也能快速重建。
?對于 JS, CSS, HTML, 圖片以及文件資源以及其它支持開箱即用,不需要安裝插件。
?在需要時使用 Babel,PostCSS 和 PostHTML 自動轉(zhuǎn)換模塊 - 甚至是node_modules。
?? 零配置代碼分割使用動態(tài)import() 語句。
?內(nèi)置支持熱加載
? 友好的錯誤日志體驗 - 語法高亮顯示的代碼幀有助于查明問題。
性能我被激發(fā)建立一個新的打包工具的第一個原因是性能。 我已經(jīng)在數(shù)千個模塊上做了一些相當大的應(yīng)用程序,并且總是對現(xiàn)有打包工具的速度感到失望。 大型應(yīng)用程序可能需要幾分鐘才能完成,這在開發(fā)過程中尤其令人沮喪
許多打包工具專注于快速增量重新構(gòu)建性能,這是很好的。 但是,最初的構(gòu)建性能對于開發(fā)和生產(chǎn)/ CI 構(gòu)建也非常重要。
Parcel 通過使用工作進程并行編譯代碼,利用現(xiàn)代多核處理器解決了這個問題。 這導(dǎo)致了初始構(gòu)建的巨大加速。 它還有一個文件系統(tǒng)緩存,可以保存每個文件的編譯結(jié)果,以便更快的后續(xù)啟動。
零配置體驗我建立Parcel的第二個原因是幫助解決管理配置的痛苦。大多數(shù)其它打包工具都是圍繞著配置文件以及大量的插件建立起來的,為了使事情順利進行,看到 500 行以上的應(yīng)用程序配置并不罕見。
這種配置不僅繁瑣耗時,而且很難正確使用,并且必須針對每個應(yīng)用程序進行復(fù)制。通常情況下,這可能導(dǎo)致次優(yōu)化的應(yīng)用程序轉(zhuǎn)到到生產(chǎn)。
Parcel 被設(shè)計為零配置:只需將它指向你的應(yīng)用程序的入口點,它就能正確工作。 Parcel 支持 JS,CSS,HTML,圖片,文件資源等等 - 不需要任何插件。
Parcel 的零配置體驗也涉及到文件格式。當 Parcel 檢測到 .babelrc,.postcssrc 等時,也會自動應(yīng)用像 Babel,PostCSS 和 PostHTML 這樣的轉(zhuǎn)換。這甚至適用于僅用于該模塊的 node_modules 中的第三方代碼,因此應(yīng)用程序作者不需要知道如何構(gòu)建他們導(dǎo)入的每個模塊,并且構(gòu)建不會減慢不必要地在每個文件上運行 Babel。
最后,還支持代碼分割和熱模塊重新加載等高級打包功能。在生產(chǎn)模式下,Parcel 自動啟用縮小,未來還會進行其他優(yōu)化,如 tree-shaking。
未來架構(gòu)啟動一個新項目的一個好處是,我能夠為 Parcel 設(shè)計一個更加現(xiàn)代化的架構(gòu),這個架構(gòu)更加可擴展,更靈活,同時無需用戶配置,并支持代碼拆分和熱加載等高級功能。
大多數(shù)打包工具主要關(guān)注 JavaScript,并支持其他格式。例如,默認情況下,其他文件類型通常會內(nèi)嵌到JavaScript 文件中,并使用額外的插件和 hack 將其再次提取到多帶帶的文件中。
在 Parcel 中,任何類型的文件都可以成為一等公民。添加代表輸入文件的新資源類型和將類似類型的資源組合到輸出文件中的打包工具很容易。
例如,分析和生成 CSS 代碼的 CSS 資源類型和將 CSS 資源組合成最終打包的 CSS Packager。 JS,HTML 等存在類似的類型。這樣,Parcel 完全是文件類型無關(guān)的。
你可以閱讀更多關(guān)于Parcel 如何在網(wǎng)站上工作的信息。
試試把Parcel 剛剛開始,但許多應(yīng)用程序已經(jīng)開箱即用并且零配置! 所以試試看吧 - 刪除你的webpack/browserify配置,卸載這些插件,然后嘗試Parcel。?
歡迎向我反饋! 你可以在Twitter上找到我@devongovett。
網(wǎng)站和文檔
Github
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://m.hztianpu.com/yun/90283.html
摘要:年前端有哪些領(lǐng)域,技術(shù)值得關(guān)注,哪些技術(shù)會興起,哪些技術(shù)會沒落。自從谷歌提出后,就持續(xù)的獲得了業(yè)界的關(guān)注,熱度可見一斑。就在今年,谷歌也宣布將獲得與安卓原生應(yīng)用同等的待遇與權(quán)限。但是無論都值得關(guān)注。 1.前言 2017悄然過去,2018已經(jīng)來到。人在進步,技術(shù)在發(fā)展。2018年前端有哪些領(lǐng)域,技術(shù)值得關(guān)注,哪些技術(shù)會興起,哪些技術(shù)會沒落。下面就我個人的判斷進行一個預(yù)測判斷,希望能對大家...
摘要:年前端有哪些領(lǐng)域,技術(shù)值得關(guān)注,哪些技術(shù)會興起,哪些技術(shù)會沒落。自從谷歌提出后,就持續(xù)的獲得了業(yè)界的關(guān)注,熱度可見一斑。就在今年,谷歌也宣布將獲得與安卓原生應(yīng)用同等的待遇與權(quán)限。但是無論都值得關(guān)注。 1.前言 2017悄然過去,2018已經(jīng)來到。人在進步,技術(shù)在發(fā)展。2018年前端有哪些領(lǐng)域,技術(shù)值得關(guān)注,哪些技術(shù)會興起,哪些技術(shù)會沒落。下面就我個人的判斷進行一個預(yù)測判斷,希望能對大家...
摘要:前言今天很高興來講一下新的打包工具,一個快速的,零配置的打包工具。上述原因影響了初步構(gòu)建的速度。他也有文件緩存系統(tǒng),以便于快速的重建。一個的打包工程行代碼,已經(jīng)不是什么稀罕的事情了。 這篇文章總字數(shù):1214,普通閱讀4分鐘,速讀2分鐘,主要講的是新的打包工具parcel的一些新特性,謝謝,有興趣朋友可以關(guān)注一下我的github上面有30多篇文章,喜歡的可以watch或者star。你的...
摘要:極速零配置應(yīng)用打包工具的優(yōu)勢極速打包時間使用進程去啟用多核編譯。的缺點缺乏插件新出的打包工具,還在成長當中,插件的數(shù)量和這種成熟的工具是無法相比的。不太適合大項目畢竟配置,無需過多的配置即可使用。 showImg(https://segmentfault.com/img/remote/1460000012593231); 開發(fā)項目或者寫 demo 的時候,還在為 webpack 的配置...
摘要:友好的錯誤記錄體驗,語法突出顯示的代碼幀有助于查明問題。為入口資源創(chuàng)建一個,并為動態(tài)導(dǎo)入的資源創(chuàng)建子,這回導(dǎo)致代碼拆分的發(fā)生。如果一個資源需要多個,它會被打包到最近的共同祖先,因此它不會被包含多次。 官方地址:https://parceljs.org/getting_... Parcel 是 Web 應(yīng)用打包工具,適用于經(jīng)驗不同的開發(fā)者。它利用多核處理提供了極快的速度,并且不需要任何...
閱讀 1561·2021-11-24 09:39
閱讀 3715·2021-09-29 09:47
閱讀 1638·2021-09-29 09:34
閱讀 3138·2021-09-10 10:51
閱讀 2624·2019-08-30 15:54
閱讀 3280·2019-08-30 15:54
閱讀 928·2019-08-30 11:07
閱讀 1080·2019-08-29 18:36