譯者按:最全的JavaScript開發(fā)工具列表,總有一款適合你!
讓客戶滿意是我們工作的目標(biāo),不斷超越客戶的期望值來自于我們對(duì)這個(gè)行業(yè)的熱愛。我們立志把好的技術(shù)通過有效、簡(jiǎn)單的方式提供給客戶,將通過不懈努力成為客戶在信息化領(lǐng)域值得信任、有價(jià)值的長期合作伙伴,公司提供的服務(wù)項(xiàng)目有:域名與空間、
雅安服務(wù)器托管、營銷軟件、網(wǎng)站建設(shè)、
十堰網(wǎng)站維護(hù)、網(wǎng)站推廣。
為了保證可讀性,本文采用意譯而非直譯。另外,本文版權(quán)歸原作者所有,翻譯僅用于學(xué)習(xí)。
簡(jiǎn)介
2017年1月,Stack Overflow年度開發(fā)者調(diào)研一共訪問了64000個(gè)程序員,發(fā)現(xiàn)JavaScript已經(jīng)連續(xù)5年成為最流行的編程語言。
這篇博客將介紹一些常用的JavaScript開發(fā)工具:
- 構(gòu)建&自動(dòng)化
- IDE&編輯器
- 文檔
- 測(cè)試
- 調(diào)試
- 安全
- 代碼優(yōu)化&分析
- 包管理
構(gòu)建 & 自動(dòng)化
- Webpack 對(duì)JavaScript應(yīng)用依賴的所有模塊進(jìn)行靜態(tài)分析,生成依賴圖,然后將它們打包成數(shù)個(gè)靜態(tài)文件。
- Grunt 以將重復(fù)耗時(shí)的任務(wù)自動(dòng)化。Grunt的生態(tài)系統(tǒng)非常大,有超過6010個(gè)插件。
- Gulp 發(fā)布于Grunt之后,采用了完全不同的方式,使用JavaScript函數(shù)定義任務(wù)。它有超過2770個(gè)插件,并且提供了更好的控制。
- Browserify 使得開發(fā)者可以在瀏覽器使用CommonJS模塊。開發(fā)者像在node環(huán)境一樣,通過
require('modules')
來組織模塊之間的引用和依賴,Browserify將這些依賴打包成瀏覽器可以直接引用的JS文件。 - Brunch 非常簡(jiǎn)單,速度很快。Brunch的配置文件非常簡(jiǎn)單,入門文檔非常詳細(xì)。Brunch會(huì)自動(dòng)生成Source Map,方便了開發(fā)者Debug。
- Yeoman 可以用于任何編程語言(JavaScript, Python, C#, Java, etc.)。它是前端開發(fā)的腳手架,有6213個(gè)插件。
IDE & 編輯器
- WebStorm 是一款強(qiáng)大的JavaScript IDE。它支持多種框架和CSS語言,包括前端,后端,移動(dòng)端以及桌面應(yīng)用。WebStorm可以無縫整合第三方工具,例如構(gòu)建構(gòu)建、語法檢查構(gòu)建linter等等。它提供了代碼補(bǔ)全,實(shí)時(shí)錯(cuò)誤監(jiān)測(cè),導(dǎo)航,內(nèi)置控制臺(tái),各種插件等一系統(tǒng)功能。
- Atom 是GitHub團(tuán)隊(duì)開發(fā)的。開發(fā)者可以很容易地對(duì)Atom進(jìn)行自定義。Atom自帶了一個(gè)包管理工具,代碼補(bǔ)全,文件系統(tǒng)瀏覽器,支持多個(gè)平臺(tái)以及其他有用的功能。
- Visual Studio Code 是微軟開發(fā)的IDE,支持TypeScript。它提供了代碼補(bǔ)全,語法高亮,支持Git命令等等。另外,它還有非常多的插件。
- Brackets 是一個(gè)輕量級(jí)的開源編輯器。它專注于可視化工具,可以幫助開發(fā)者開發(fā)Web應(yīng)用。Brackets支持實(shí)時(shí)預(yù)覽以及行內(nèi)編輯。
文檔
- Swagger 提供了一系列規(guī)則用于描述API。使用Swagger,可以創(chuàng)建清晰的文檔,并且自動(dòng)化API相關(guān)的操作(例如功能測(cè)試)。
- JSDoc 可以根據(jù)javascript文件中注釋信息,生成JavaScript應(yīng)用程序或庫、模塊的API文檔。JSDoc可以用于管理大型項(xiàng)目。
- jGrouseDoc 是一個(gè)開源工具,可根據(jù)JavaScript注釋生成類似Jaavdoc 的源碼文檔。它不僅可以為變量和函數(shù)生成文檔,還可以為模塊等其他元素生成文檔。
- YUIDoc 基于Nodejs,可以將文檔中的注釋生成API文檔。它使用類似于Javadoc與Doxygen的語法,并且支持實(shí)時(shí)預(yù)覽,支持各種語言,并且支持標(biāo)記語言。
- Docco 是免費(fèi)的文檔工具,由Literate CoffeeScript 編寫。它將代碼中的注釋生成HTML文檔。Docco并不限于JavaScript,同時(shí)支持Python, Ruby, Clojure等語言。
測(cè)試
- Jasmine 是一個(gè)行為驅(qū)動(dòng)開發(fā)(BDD)框架,用于測(cè)試JavaScript代碼。它不依賴任何第三方模塊,也不需要DOM。它的語法非常簡(jiǎn)單易懂,使得編寫測(cè)試變得很簡(jiǎn)單。另外,它也可以用于測(cè)試Node.js,Python以及Ruby。
- Mocha 是一個(gè)功能測(cè)試框架,用于測(cè)試Node.js以及瀏覽器端JavaScript。作為開發(fā)者選的測(cè)試框架,它可以自由的編寫測(cè)試組,提供詳細(xì)的測(cè)試報(bào)告,同時(shí)讓異步測(cè)試非常簡(jiǎn)單。Mocha通常與斷言庫Chai 來驗(yàn)證測(cè)試結(jié)果。
- PhantomJS 用于前端單元測(cè)試。由于PhantomJS是一個(gè)×××面的Webkit瀏覽器引擎,與直接使用瀏覽器測(cè)試相比,使用PhantomJS腳本可以運(yùn)行得更快。它支持各種網(wǎng)頁標(biāo)準(zhǔn),例如JSON, Canvas, DOM操作, SVG以及CSS選擇器。
- Protractor 是一個(gè)端到端測(cè)試框架,用于測(cè)試Angular應(yīng)用。它是基于WebDriverJS構(gòu)建的,它可以通過瀏覽器事件或者原生事件,從而模擬真實(shí)用戶,來測(cè)試應(yīng)用。
調(diào)試
- JavaScript Debugger 由Mozilla Developer Network (MDN)開發(fā),可以獨(dú)立用于調(diào)試Node.js代碼,或者用于其他瀏覽器。Firefox提供了本地和遠(yuǎn)程調(diào)試功能,并且,F(xiàn)irefox安卓端也用于調(diào)試運(yùn)行在安卓應(yīng)用。
- Chrome Dev Tools 提供了一系列工具,可以用于調(diào)試JavaScript代碼,編輯CSS,以及測(cè)試應(yīng)用性能。
- ng-inspector 是Firefox,Chrome和Safari瀏覽器插件,可以幫助開發(fā)者開發(fā)、理解以及調(diào)試AngularJS應(yīng)用。它提供了實(shí)時(shí)更新,DOM高亮等功能。
- Augury 是一個(gè)Chrome插件,可以用于調(diào)試Angular 2應(yīng)用。它讓開發(fā)者可以直接查看應(yīng)用結(jié)構(gòu),操作特征以及狀態(tài)變化。
安全
- Snyk 是一個(gè)付費(fèi)服務(wù),用于發(fā)現(xiàn)、修復(fù)和預(yù)防JavaScript,Node.js和Ruby應(yīng)用的已知漏洞。Snyk擁有自己的漏洞庫,以及NSP和NIST NVD的漏洞數(shù)據(jù)。它允許開發(fā)者使用它們的補(bǔ)丁和更新來修復(fù)這些安全漏洞。
- Node Security Project 提供了工具用于掃描依賴來監(jiān)測(cè)漏洞。NSP使用自己的漏洞數(shù)據(jù),以及來自NIST NVD的漏洞數(shù)據(jù)。NSP支持集成GitHub和CI軟件,實(shí)時(shí)監(jiān)測(cè)和報(bào)警,并且可以提供如何修復(fù)Node.js應(yīng)用漏洞的建議。
- RetireJS 是一個(gè)開源的依賴監(jiān)測(cè)工具。它包含了多個(gè)組件,包括命令行工具,Grunt插件,F(xiàn)irefox和Chrome插件,Burp和OWASP ZAP插件。Retirejs從NIST NVD,漏洞追蹤系統(tǒng),博客和郵件列表等手機(jī)漏洞數(shù)據(jù)。
- Gemnasium 是一個(gè)付費(fèi)工具,不過有免費(fèi)方案。它支持各種技術(shù),比如Ruby, PHP, Bower, Python和npm。Gemnasium提供很多非常有用的特性,比如自動(dòng)更新,實(shí)時(shí)報(bào)警以及Slack集成等。
- OSSIndex 支持多個(gè)生態(tài)系統(tǒng)(Java, JavaScript和.NET/C#),以及多個(gè)平臺(tái),例如NuGet, npm, Bower, Chocolatey, Maven, Composer, Drupal和MSI。它從NVD以及其他來源收集漏洞數(shù)據(jù)。
代碼優(yōu)化 & 分析
- JSLint 是一個(gè)Web服務(wù),用于驗(yàn)證JavaScript的代碼質(zhì)量。當(dāng)它診斷到一個(gè)問題時(shí),它會(huì)返回問題的大致位置和出錯(cuò)信息。JSLint可以分析一些編碼規(guī)范以及語法錯(cuò)誤。
- JSHint 可以發(fā)現(xiàn)JavaScript中的錯(cuò)誤以及一些潛在的問題。JSHint是一個(gè)靜態(tài)代碼分析工具,旨在幫助開發(fā)者編寫大型的程序。它可以診斷語法錯(cuò)誤、隱形類型轉(zhuǎn)換等問題,但是它并不能確定你的應(yīng)用是否正確、性能是否足夠好、以及是否會(huì)發(fā)生內(nèi)存泄漏。 JSHint是JSLint的一個(gè)fork。
- ESLint 是一個(gè)開源診斷工具,用于JSX和JavaScript應(yīng)用。它可以幫助開發(fā)者發(fā)現(xiàn)可疑的或者不符合特定編程規(guī)范的代碼。它幫助開發(fā)者在沒有執(zhí)行代碼之前發(fā)現(xiàn)JS代碼中問題,節(jié)省了不少時(shí)間。ESLint由Node.js編寫,可以使用NPM安裝。
- Flow 是JavaScript代碼靜態(tài)類型檢測(cè)器,由Facebook開發(fā)。Flow可以在編碼時(shí)檢查到類型錯(cuò)誤并做出提示。
包管理
- Bower 是一個(gè)用于管理前端依賴的包管理器,Twitter創(chuàng)建。它提供了大量可供使用的依賴包,幫助JavaScript開發(fā)者更方便地管理前端依賴的JS庫。
- NPM 是node package manager的縮寫,事實(shí)上NPM包可以用于前后端。它是JavaScript包管理系統(tǒng),也是世界上大的依賴庫,有超過475,000個(gè)模塊。
- Yarn 是Facebook, Google, Exponent 和 Tilde 開發(fā)的一款新的 JavaScript 包管理工具。與NPM相比,它解決了安全、性能以及一致性問題。
- Duo 吸取了Component, Browserify和Go的經(jīng)驗(yàn),致力于簡(jiǎn)化大型Web應(yīng)用的構(gòu)建過程。
關(guān)于Fundebug
Fundebug專注于JavaScript、微信小程序、微信小游戲、支付寶小程序、React Native、Node.js和Java實(shí)時(shí)BUG監(jiān)控。 自從2016年雙十一正式上線,F(xiàn)undebug累計(jì)處理了7億+錯(cuò)誤事件,得到了Google、360、金山軟件、百姓網(wǎng)等眾多知名用戶的認(rèn)可。歡迎免費(fèi)試用!
版權(quán)聲明
轉(zhuǎn)載時(shí)請(qǐng)注明作者Fundebug以及本文地址:
https://blog.fundebug.com/2017/06/19/javascript-tool-list/
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。
文章標(biāo)題:Javascript開發(fā)工具大全-創(chuàng)新互聯(lián)
標(biāo)題來源:
http://weahome.cn/article/csgidj.html