JavaScript 基礎(chǔ)工具清單:通用 前端 后端
作者:heloowird 編譯
訓(xùn)練營中,為擴展學(xué)員們的編程能力,我們給他們介紹了一些工具和庫。目前有位JavaScript學(xué)員Kalina,他匯總了這些工具的清單,以分享給其他的代碼愛好者。
訓(xùn)練營中,為擴展學(xué)員們的編程能力,我們給他們介紹了一些工具和庫。目前有位JavaScript學(xué)員Kalina,他匯總了這些工具的清單,以分享給其他的代碼愛好者。
基于Kalina的清單,我們JavaScript訓(xùn)練營的輔導(dǎo)員Ivan Storck畫了一張思維導(dǎo)圖:
通用
腳手架工具(用于啟動項目)
- Yeoman – Yeoman是一個健壯且固定的客戶端程序庫,包含了工具和框架,有助于開發(fā)者快速構(gòu)建漂亮的web應(yīng)用。
構(gòu)建工具(自動化構(gòu)建)
- Grunt.js – Grunt生態(tài)系統(tǒng)很巨大,且每天成長著。由于有數(shù)以百計的插件可供選擇,你可以使用Grunt自動化構(gòu)建,且花費最少的代價。
- Pint.js(Grunt助手) – Pint是一個小型、異步、感知依賴的基于Grunt的封裝庫,試圖解決大規(guī)模構(gòu)建過程中的一些問題。
- Gulp.js – Gulp的流式構(gòu)建方式和代碼優(yōu)于配置理念使構(gòu)建更簡單、更直觀。
- Browserify.js(瀏覽器端) – Browserify是一個允許編寫、編譯Node.js風(fēng)格的模塊并將之用于瀏覽器的開發(fā)工具。就像node,我們在單獨文件中編寫模塊,使用module.exports、exports導(dǎo)出外部方法和屬性。
- Uglify.js – Uglify.js是服務(wù)于NodeJS的一個JavaScript解析/壓縮/美化庫。
包管理工具
前端
MVC框架
- Backbone.js – Backbone.js通過提供進行鍵值綁定的模塊、自定義事件、具有豐富可枚舉函數(shù)API的集合、能處理已定義事件的視圖,搭建了web應(yīng)用的架構(gòu)。它通過RESTful JSON接口與其它已存在的API進行通信。
- Ember.js – 當(dāng)?shù)讓幽K改變時,Ember使得Handlebar模板引擎在保持HTML***方面做得更好。開始時,你甚至不需要編寫任何JavaScript。
- Angular.js – Angular.js能讓你擴展應(yīng)用的HTML詞匯。由此產(chǎn)生的效果是網(wǎng)頁極富表現(xiàn)力,代碼可讀性強,適合快速開發(fā)。
模板
- Handlebars.js – Handlebars提供了讓你順利、有效地構(gòu)建語義模板的強大能力。Handlebars兼容Mustache模板,因此你可以在Handlebars中導(dǎo)入Mustache模板,同時享用Handlebars的其他功能。
- Mustache.js(比Handlebars更少外置元素) – Mustache是一個簡單的web模板系統(tǒng),已有ActionScript、 C++、Clojure、CoffeeScript、ColdFusion、D、Erlang、Fantom、 Go、Java、JavaScript、 Lua、.NET、 Objective-C、Pharo、Perl、PHP、Python、Ruby、Scala 和 XQuery語言實現(xiàn)版本的可用。
- Jade – Jade 是一個node模板引擎,主要為node.js的服務(wù)器端模板而設(shè)計。
- Haml-js – Haml-js允許在JavaScript項目中使用Haml語法,并擁有大部分與原先Haml相同的功能。
- Eco – Eco能讓你在標記元素中嵌入CoffeeScript 的邏輯。
測試
后端
服務(wù)器
數(shù)據(jù)庫
- MongoDB – MongoDB 是個開源的文檔數(shù)據(jù)庫,***著nosql數(shù)據(jù)庫。
- Postgresql – PostgreSQL 是一個強大、開源、對象-關(guān)系型數(shù)據(jù)庫系統(tǒng)。
- SQL – SQL用于與數(shù)據(jù)庫進行通信。根據(jù)美國國家標準學(xué)會的定義,它是關(guān)系式數(shù)據(jù)庫管理系統(tǒng)的標準語言。
架構(gòu)風(fēng)格
- RESTful – 表現(xiàn)層狀態(tài)轉(zhuǎn)化是一種架構(gòu)風(fēng)格,包含了一組相互協(xié)作的架構(gòu)約束。這些約束應(yīng)用于分布式超媒體系統(tǒng)之間的組件、連接器和數(shù)據(jù)元素。
測試
- Cucumber.js – Cucumber.js是一種流行的行為驅(qū)動開發(fā)工具,并將之應(yīng)用于你自己的JavaScript程序
- Jasmine – Jasmine是JavaScript的一個行為驅(qū)動開發(fā)測試框架。它不依賴于瀏覽器、DOM、或任何其他JavaScript框架。因此它適用于網(wǎng)站、Node.js項目、或任何可運行JavaScript的地方。
- Mocha – Mocha 是一個運行于node.js和瀏覽器的特色豐富的JavaScript測試框架,使得異步測試更簡單有趣。
- Q-Unit – Q-Unit 是一個強大,易用的JavaScript單元測試框架。它被用于jQuery、jQuery UI 和jQuery Mobile 項目,能夠測試任何通用的JavaScript代碼。
斷言庫
- Chai – Chai 是一個行為驅(qū)動開發(fā)/測試驅(qū)動開發(fā)(BDD / TDD )斷言庫,用于node和瀏覽器,可以愉快地搭配任何JavaScript測試框架。
函數(shù)式編程工具
- Underscore.js – Underscore是一個提供了一大堆有用的函數(shù)式編程輔助,無須擴展任何內(nèi)置對象的JavaScript庫。
- Lo-Dash – Lo-Dash是一個提供了一致性、定制和性能的實用程序庫。
更新:
有一個你認為應(yīng)該在此清單的工具嗎?看看這篇文章和Github上使用MindNode制作的思維導(dǎo)圖(OPML)。請?zhí)峤灰粋€pull request,給我們您的建議,以增加新流行工具!
原文鏈接: codefellows 翻譯: 伯樂在線 - heloowird
責(zé)任編輯:林師授
來源:
伯樂在線