編輯推薦
囊括前後端多項技術,全棧學習一站直達:
Node.js
MongoDB
Backbone.js
Parse.com
Heroku
WindowsAzure
多版本Chat應用,貫通多組閤實現:
jQuery+Parse.comJSRESTAPI
Backbone.js+Parse.comJSSDK
Backbone.js+Node.js
Backbone.js+Node.js+MongoDB
內容簡介
《JavaScript快速全棧開發》涵蓋JavaScript快速開發的多項前沿技術,是極其少見的前後端技術集大成之作。本書所涉技術包括Node.js、MongoDB、Twitter Bootstrap、LESS、jQuery、Parse.com、Heroku等,分三部分介紹如何用這些技術快速構建軟件原型。第一部分是基礎知識,讓大傢真正認識前後端及敏捷開發,並學會搭建本地及雲環境。第二部分與第三部分分彆介紹如何構建前端原型和後端原型。作者以前端組件開篇,通過為一個示例聊天應用Chat打造多個版本(Web/移動),將前端和後端結閤在一起並給齣應用部署方式。
作者簡介
Azat Mardanov,資深軟件工程師,帶領團隊重構瞭具有5000萬用戶的DocuSign;社交媒體新聞聚閤網Storify.com工程師,為包括BBC、NBC、CNN、白宮等客戶提供服務;原Gizmo首席技術官和聯閤創始人,期間參與著名的500 Startups商業加速器項目;科技聚會和編程馬拉鬆活動的常客,曾和FashionMetric.com團隊一起在AngelHack活動上12次入圍決賽;General Assembly、Hack Reactor、pariSOMA和Marakana等機構的講師,其技術課程獲得一緻好評;技術作者,其個人博客webAppLog.com一度成為榖歌搜索“express.js tutorial”結果中排名第一的教程站點;他還曾為美國各大政府機構開發關鍵任務應用。另外,他還著有Express.js Guide、Practical Node.js等書,而且開發瞭很多Node.js開源項目(如ExpressWorks、mongoui以及HackHall等)。
內頁插圖
目錄
第一部分快速入門
第1章基礎知識
1.1定義前端
1.1.1綜述
1.1.2HTML
1.1.3CSS
1.1.4JavaScript
1.2敏捷開發概述
1.2.1Scrum
1.2.2測試驅動開發
1.2.3持續部署和集成
1.2.4結對編程
1.3後端定義
1.3.1Node.js
1.3.2NoSQL和MongoDB
1.3.3雲計算
1.3.4HTTP請求和響應
1.3.5REST式API
第2章設置
2.1本地環境搭建
2.1.1開發目錄
2.1.2瀏覽器
2.1.3IDE和文本編輯器
2.1.4版本控製係統
2.1.5本地HTTP服務器
2.1.6數據庫:MongoDB
2.1.7其他組件
2.2雲端環境搭建
2.2.1SSH密鑰
2.2.2GitHub
2.2.3WindowsAzure
2.2.4Heroku
2.2.5Cloud
第二部分前端原型構建
第3章jQuery和Parse.com
3.1定義
3.1.1JSON
3.1.2AJAX
3.1.3跨域調用
3.2jQuery
3.3TwitterBootstrap
3.4LESS
3.4.1變量
3.4.2混入類(mixin)
3.4.3操作符
3.5使用第三方API(Twitter)和jQuery的例子
3.6Parse.com
3.7使用Parse.com的Chat概述
3.8使用Parse.com的Chat:RESTAPI和jQuery版本
3.9推送到GitHub
3.10部署到WindowsAzure
3.11部署到Heroku
3.12更新和刪除消息
第4章Backbone.js
4.1從頭開始構建Backbone.js應用
4.2使用集閤
4.3事件綁定
4.4使用Underscore.js視圖和子視圖
4.5重構
4.6開發時的AMD和Require.js
4.7生産環境裏的Require.js
4.8簡單好用的Backbone腳手架工具
第5章Backbone.js和Parse.com
5.1使用Parse.com的Chat:JavaScriptSDK和Backbone.js版本
5.2部署Chat到PaaS
5.3增強Chat應用
第三部分後端原型構建
第6章Node.js和MongoDB
6.1Node.js
6.1.1創建Node.js的HelloWorld程序
6.1.2Node.js核心模塊
6.1.3NPM
6.1.4部署HelloWorld到PaaS
6.1.5部署到WindowsAzure
6.1.6部署到Heroku
6.2Chat:運行時內存版本
6.3Chat的測試用例.
6.4MongoDB
6.4.1MongoDBShell
6.4.2MongoDB原生驅動
6.4.3MongoDBonHeroku:MongoHQ
6.4.4BSON
6.5Chat:MongoDB版本
第7章整閤前後端
7.1不同域部署
7.2修改入口
7.3Chat應用
7.4部署
7.5同域部署
第8章福利:Webapplog上的文章
8.1Node裏的異步
8.1.1非阻塞I/O
8.1.2異步編碼方式
8.2使用Monk遷移MongoDB
8.3在Node.js裏使用Mocha實踐TDD
8.3.1誰需要使用測試驅動的開發
8.3.2快速開始指南
8.4Wintersmith:靜態網站生成器
8.4.1開始使用Wintersmith
8.4.2其他靜態網站生成器
8.5Express.js教程:使用Monk和MongoDB的簡單RESTAPI應用
8.6Express.js教程:參數、錯誤處理及其他中間件
8.6.1請求處理函數
8.6.2參數處理中間件
8.6.3錯誤處理
8.6.4其他中間件
8.6.5抽象
8.7使用Node.js和MongoDB通過Mongoskin和Express.js構建JSONRESTAPI服務器
8.7.1測試覆蓋率
8.7.2依賴
8.7.3實現
8.7.4總結
8.8Node.jsMVC:Express.js+DerbyHelloWorld教程
8.8.1NodeMVC框架
8.8.2Derby安裝
8.8.3文件結構
8.8.4依賴
8.8.5視圖
8.8.6主服務器
8.8.7Derby應用
8.8.8運行HelloWorld應用
8.8.9遞值給後端
總結與推薦閱讀
前言/序言
為什麼要撰寫本書
其實本書是由失望激發的産物。作為一名具有多年工作經驗的軟件工程師,當我開始學習Node.js和Backbone.js時,發現從它們的官方文檔入手相當睏難,而且網上嚴重缺少快速入門指南和相應的示例。並且,你基本上不可能在同一個地方找到JS相關的高級技術的所有教程。
最好的學習方式就是實踐,沒錯吧?因此我通過簡單的小例子來實踐,即快速入門指南,用來快速學習一些新技術。在完成一些基本的程序後,我需要一些參考文檔和迴顧。一開始我寫這個指南隻是自用,以加深對這些概念的理解,並且供以後參考。在StartupMonthly我教瞭幾次為期兩天的集中課程,也是使用同樣的理念,幫助有經驗的開發者使用JavaScript進行敏捷開發。我們使用的手冊得到瞭很多反饋,然後我們進行瞭大量更新。最終的成果就是你麵前這本書瞭。
本書內容
正常情況下,讀者一定會期待這裏有一些快速入門指南、教程和建議(比如,Git工作流)。我們主要介紹如何編碼,而非闡述理論知識,因此其中的理論會直接和實踐部分相關,對於更好地理解相應技術(比如JSONP和跨域請求)以及用到的具體方法來說必不可少。
除瞭代碼示例,本書幾乎介紹瞭所有安裝和部署步驟。
你將從前端組件開始,學習一個聊天(Web/移動)應用程序的例子。這個程序會有多個版本,而最終我們會把前端和後端結閤到一起,然後將該程序發布到生産環境。這個聊天程序包含典型Web應用所有必要的組件,會幫你建立自己開發應用、應聘好工作或晉升,甚至是創業的信心。
目標讀者
本書麵嚮進階的初學者和中級Web及移動開發者,即熟悉RubyonRails、PHP、Perl、Python或者Java等其他語言的專傢。這類開發人員希望學習更多的JavaScript及Node.js相關技術來快速構建Web和移動程序原型,但可能沒有時間去翻閱(大量或者哪怕些許)官方文章。我們並非想通過本書將讀者成就為專傢,而是希望幫助他們盡可能快地構建程序。
本書英文書名RapidPrototypingwithJS:AgileJavaScriptDevelopment直譯為“用JS快速構建原型:JavaScript敏捷開發”,顧名思義,它就是要介紹如何用最快的速度以Web或者移動應用的形式構建齣原型。這正是LeanStartup裏的思想,所以相對來說本書對於創業公司的創始人會更有意義,但大公司的員工同樣會發現它的有用之處,特彆是當他們想要掌握新技能,想要晉升或謀求更好的工作時。
這本書不是什麼
這既不是一本全麵介紹相關框架、庫或者技術(或者某一特定技術)的書,也不是所有Web開發技術與技巧的參考書。本書中的例子很可能在網上有公開可用的類似源代碼。
如果你不瞭解循環、條件判斷語句、數組、散列、對象和函數等編程基礎概念,請不要奢望在本書中瞭解它們。此外,理解書中的例子也將非常具有挑戰性。
市麵上已經有許多特彆棒的書介紹瞭基本編程方法,本書最後就給齣瞭一個此類書的列錶,以方便大傢查閱。再次提醒大傢注意,本書的目的是講述敏捷開發,而非重述編程理論和計算機科學知識。
JavaScript快速全棧開發 下載 mobi epub pdf txt 電子書