JavaScript基礎工具清單

heloowird發表於2014-08-03

在訓練營中,為擴充套件學員們的程式設計能力,我們給他們介紹了一些工具和庫。目前有位JavaScript學員Kalina,他彙總了這些工具的清單,以分享給其他的程式碼愛好者。

基於Kalina的清單,我們JavaScript訓練營的輔導員Ivan Storck畫了一張思維導圖:

通用

腳手架工具(用於啟動專案)

    • Yeoman – Yeoman是一個健壯且固定的客戶端程式庫,包含了工具和框架,有助於開發者快速構建漂亮的web應用。

構建工具(自動化構建)

    • Grunt.js – Grunt生態系統很巨大,且每天成長著。由於有數以百計的外掛可供選擇,你可以使用Grunt自動化構建,且花費最少的代價。
      • Pint.js(Grunt助手) – Pint是一個小型、非同步、感知依賴的基於Grunt的封裝庫,試圖解決大規模構建過程中的一些問題。
    • Gulp.js – Gulp的流式構建方式和程式碼優於配置理念使構建更簡單、更直觀。
    • Browserify.js(瀏覽器端) – Browserify是一個允許編寫、編譯node.js風格的模組並將之用於瀏覽器的開發工具。就像node,我們在單獨檔案中編寫模組,使用module.exports、exports匯出外部方法和屬性。
    • Uglify.js – Uglify.js是服務於NodeJS的一個JavaScript解析/壓縮/美化庫。

包管理工具

    • Homebrew(適用於Mac 系統) – Homebrew能安裝你需要而蘋果不提供的東西。
    • Apt (適用於Ubuntu系統) – apt-get命令是一個強大的命令列工具,與Ubuntu的高階包裝工具(APT)配合使用,提供了安裝新軟體、升級已有軟體、更新軟體列表目錄,甚至升級整個Ubuntu系統等功能。
    • NPM – npm是一個Node.js官方包管理工具。
    • Bower – Bower是一個web的包管理工具。

前端

MVC框架

    • Backbone.js – Backbone.js通過提供進行鍵值繫結的模組、自定義事件、具有豐富可列舉函式API的集合、能處理已定義事件的檢視,搭建了web應用的架構。它通過RESTful JSON介面與其它已存在的API進行通訊。
    • Ember.js – 當底層模組改變時,Ember使得Handlebar模板引擎在保持HTML最新方面做得更好。開始時,你甚至不需要編寫任何JavaScript。
    • Angular.js – Angular.js能讓你擴充套件應用的HTML詞彙。由此產生的效果是網頁極富表現力,程式碼可讀性強,適合快速開發。

模板

    • Handlebars.js – Handlebars提供了讓你順利、有效地構建語義模板的強大能力。Handlebars相容Mustache模板,因此你可以在Handlebars中匯入Mustache模板,同時享用Handlebars的其他功能。
    • Mustache.js(比Handlebars更少外接元素) – Mustache是一個簡單的web模板系統,已有ActionScript、 C++、Clojure、CoffeeScript、ColdFusion、D、Erlang、Fantom、 Go、Java、JavaScript、 Lua、.NET、 Objective-C、Pharo、Perl、PHP、Python、Ruby、Scala 和 XQuery語言實現版本的可用。
    • Jade – Jade 是一個node模板引擎,主要為node.js的伺服器端模板而設計。
    • Haml-js – Haml-js允許在JavaScript專案中使用Haml語法,並擁有大部分與原先Haml相同的功能。
    • Eco – Eco能讓你在標記元素中嵌入CoffeeScript 的邏輯。

測試

    • Casper.js – CasperJS是一個Javascript實現的,PhantomJS和SlimerJS的導航指令碼和測試工具。
    • Zombie.js – Zombie.js是一個在模擬環境中測試客戶端JS程式碼的輕量級框架。無需瀏覽器。

後端

伺服器

    • Express  – Express是一個Node的web應用框架。
    • Node – Node.js是一個基於Chrome JavaScript 執行時建立的平臺, 用來方便地搭建快速、 易於擴充套件的網路應用。

資料庫

    • MongoDB – MongoDB 是個開源的文件資料庫,引領著NoSQL資料庫。
    • Postgresql – PostgreSQL 是一個強大、開源、物件-關係型資料庫系統。
    • SQL – SQL用於與資料庫進行通訊。根據美國國家標準學會的定義,它是關係式資料庫管理系統的標準語言。

架構風格

    • RESTful – 表現層狀態轉化是一種架構風格,包含了一組相互協作的架構約束。這些約束應用於分散式超媒體系統之間的元件、聯結器和資料元素。

測試

    • Cucumber.js – Cucumber.js是一種流行的行為驅動開發工具,並將之應用於你自己的JavaScript程式
    • Jasmine – Jasmine是JavaScript的一個行為驅動開發測試框架。它不依賴於瀏覽器、DOM、或任何其他JavaScript框架。因此它適用於網站、Node.js專案、或任何可執行JavaScript的地方。
    • Mocha – Mocha 是一個執行於node.js和瀏覽器的特色豐富的JavaScript測試框架,使得非同步測試更簡單有趣。
    • Q-Unit – Q-Unit 是一個強大,易用的JavaScript單元測試框架。它被用於jQuery、jQuery UI 和 jQuery Mobile 專案,能夠測試任何通用的JavaScript程式碼。

斷言庫

    • Chai – Chai 是一個行為驅動開發/測試驅動開發(BDD / TDD )斷言庫,用於node和瀏覽器,可以愉快地搭配任何JavaScript測試框架。

函數語言程式設計工具

    • Underscore.js – Underscore是一個提供了一大堆有用的函數語言程式設計輔助,無須擴充套件任何內建物件的JavaScript庫。
    • Lo-Dash – Lo-Dash是一個提供了一致性、定製和效能的實用程式庫。

 

更新:

有一個你認為應該在此清單的工具嗎?看看這篇文章和Github上使用MindNode製作的思維導圖(OPML)。請提交一個pull request,給我們您的建議,以增加新流行工具!

相關文章