Node.js開發(fā)指南

出版時(shí)間:2012-7  出版社:人民郵電出版社  作者:郭家寶(BYVoid)  頁(yè)數(shù):178  字?jǐn)?shù):249000  
Tag標(biāo)簽:無  

前言

  這本書講了什么  本書是一本 Node.js 的入門教程,寫給想了解 Node.js 的開發(fā)人員。我的目標(biāo)是使讀者通過閱讀本書,學(xué)會(huì)使用 Node.js 進(jìn)行 Web 后端開發(fā),同時(shí)能熟悉事件驅(qū)動(dòng)的異步式編程風(fēng)格,以便進(jìn)一步了解 Node.js 的許多高級(jí)特性,以及它所應(yīng)用的更多領(lǐng)域?! ”緯?章,分別討論了 Node.js的背景、安裝和配置方法、基本特性、核心模塊以及一些進(jìn)階話題。除此之外,還有2個(gè)附錄,分別介紹了JavaScript 的高級(jí)特性和 Node.js 編程規(guī)范。下面簡(jiǎn)要概述各章的主要內(nèi)容。  第1章“Node.js 簡(jiǎn)介”  這一章概述了什么是Node.js。讀過這章后,你將對(duì) Node.js 有一個(gè)基本的認(rèn)識(shí),同時(shí)了解它與 JavaScript 的深厚淵源?! 〉?章“安裝和配置Node.js”  這一章講述了如何在各種不同的環(huán)境下安裝和配置 Node.js 及其基本運(yùn)行環(huán)境,同時(shí)你你可以了解到如何編譯Node.js,以及多版本管理工具?! 〉?章“Node.js 快速入門”  這一章講解Node.js的基礎(chǔ)知識(shí),你將會(huì)學(xué)到如何使用 Node.js 的基本環(huán)境和工具進(jìn)行開發(fā)、運(yùn)行和調(diào)試。同時(shí),還會(huì)講解異步式I/O與事件式編程的一些重要概念,這些概念將會(huì)貫穿全書。此外這一章還詳細(xì)介紹了 Node.js 的模塊和包的系統(tǒng),這些都是開發(fā)中經(jīng)常會(huì)碰到的內(nèi)容?! 〉?章“Node.js 核心模塊”  這一章以全局對(duì)象、基本工具、事件發(fā)射器、文件系統(tǒng)和 HTTP 為代表,介紹了 Node.js 最常用的核心模塊。你將會(huì)在后面的章節(jié)及以后的開發(fā)中經(jīng)常與這些模塊打交道?! 〉?章“使用 Node.js 進(jìn)行 Web 開發(fā)”  這一章是本書的實(shí)踐性章節(jié),一步一步教你如何從零開始用 Express 框架創(chuàng)建一個(gè)網(wǎng)站,實(shí)現(xiàn)路由控制、模板解析、會(huì)話管理、數(shù)據(jù)庫(kù)訪問等功能,最終創(chuàng)建一個(gè) Web 2.0 微博網(wǎng)站?! 〉?章“Node.js 進(jìn)階話題”  這一章涉及幾個(gè)進(jìn)階話題,包括模塊加載機(jī)制、控制流分析和優(yōu)化、生產(chǎn)環(huán)境的應(yīng)用部署等內(nèi)容,最后還討論了 Node.js 適用的范圍,幫助讀者在今后的開發(fā)中作出更好的取舍?! 「戒汚“JavaScript 的高級(jí)特性”  這個(gè)附錄介紹了 JavaScript 的一些高級(jí)特性,如函數(shù)作用域、閉包和對(duì)象的操作等內(nèi)容。這些特性在瀏覽器端的JavaScript 開發(fā)中并沒有受到應(yīng)有的重視,而在 Node.js 中卻十分常見,閱讀這個(gè)附錄可以幫助你更好地理解并運(yùn)用 JavaScript 進(jìn)行復(fù)雜的網(wǎng)站開發(fā)?! 「戒汢“Node.js 編程規(guī)范”  這個(gè)附錄介紹了 Node.js 代碼風(fēng)格的一些約定,遵守這些約定可以讓你的代碼更清晰、易懂,同時(shí)也有利于接口開發(fā)的統(tǒng)一。該附錄還分享了一些開發(fā)經(jīng)驗(yàn),可以讓程序避免很多意外錯(cuò)誤和性能損失?! ≌l應(yīng)該閱讀本書  本書的目標(biāo)讀者是想要學(xué)習(xí) Node.js,但沒有任何系統(tǒng)的經(jīng)驗(yàn)的開發(fā)者。如果你聽說過 Node.js,并被它許多神奇的特性吸引,那么這本書就是為你準(zhǔn)備的。通過閱讀本書,你可以對(duì) Node.js 有全面的認(rèn)識(shí),學(xué)會(huì)如何用 Node.js 編程,了解事件驅(qū)動(dòng)、異步式 I/O 的編程模式,同時(shí)還可以掌握一些使用 JavaScript 進(jìn)行函數(shù)式編程的方法?! ”緯僭O(shè)讀者已經(jīng)學(xué)過至少一門編程語言,對(duì)基本的程序設(shè)計(jì)語言概念(如變量、函數(shù)、遞歸、對(duì)象)有所了解。如果你是首次學(xué)習(xí)編程語言,我建議你先學(xué)一門常見的且容易入門的語言,如 Java 或 C?! ∪绾伍喿x本書  熟悉瀏覽器端 JavaScript 的讀者將很容易學(xué)會(huì) Node.js 的許多特性,包括事件式編程、閉包、回調(diào)函數(shù)等,因?yàn)檫@些特性已經(jīng)在瀏覽器中被廣泛應(yīng)用。同時(shí),你還可以學(xué)到 Node.js 在Web 開發(fā)中的服務(wù)器端與瀏覽器端的結(jié)合方式,這無論是對(duì)前端設(shè)計(jì)還是后端開發(fā)都是有利的。你還會(huì)對(duì) JavaScript 有一個(gè)全新的認(rèn)識(shí),因?yàn)榉?wù)端的 JavaScript 中沒有 DOM 和 BOM,也不存在瀏覽器之間的兼容性問題?! 〔皇煜?JavaScript但是了解C、Java、C++、C#的讀者將很容易學(xué)會(huì) JavaScript 的語言特性及 Node.js 的基本機(jī)制,如模塊和包。你需要關(guān)注的僅僅是 JavaScript 語言的特別之處,以及服務(wù)器端開發(fā)中需要注意的一些要點(diǎn)?! ∫呀?jīng)非常了解 Web 后端開發(fā)(如 PHP、ASP.net、Ruby on Rails、Django 等)的讀者,本書將通過 Node.js 給你一個(gè)不同的視野。你會(huì)發(fā)現(xiàn) Node.js 和這些傳統(tǒng)的框架有很大的區(qū)別,因?yàn)樗褂昧耸录骄幊毯彤惒?I/O,所以你需要改變一些已有的思維方式。同時(shí),你還能享受到 Web 前后端緊密配合帶來的新鮮感,并可能對(duì) Ajax 有全新的認(rèn)識(shí)。  如果是完全沒有接觸過JavaScript的讀者,那么我建議你看完本書的前兩章以后,花點(diǎn)時(shí)間到http://www.w3school.com.cn/js/網(wǎng)站看看 JavaScript 的入門教程。你只要了解基礎(chǔ)知識(shí)就行了,本書并不要求你學(xué)成一個(gè)JavaScript專家。在這之后請(qǐng)閱讀本書的附錄A,了解一下實(shí)際開發(fā)中可能會(huì)遇到的稍微復(fù)雜的語言特性。附錄A是為本書量身定做的,你可以從中很快地學(xué)會(huì) Node.js 經(jīng)常使用到的那些特性。如果你想更加深入系統(tǒng)地學(xué)習(xí)JavaScript,推薦閱讀Mozilla JavaScript指南http://developer.mozilla.org/en/JavaScript/Guide?! ”緯鴱牡?章開始,將介紹如何用 Node.js 開發(fā),你應(yīng)該仔細(xì)閱讀這一章。第4章是一些最基本的模塊介紹,涉及Node.js 模塊的基本風(fēng)格,這可能會(huì)幫助你理解后面介紹的 API。第5章是一個(gè)真槍實(shí)彈的實(shí)戰(zhàn)演練,跟隨這一章的每個(gè)步驟你就可以用 Node.js 實(shí)現(xiàn)一個(gè)真正的 Web 應(yīng)用,體驗(yàn)開發(fā)的成就感。第6章則是一些進(jìn)階話題,你會(huì)在這里接觸到 Node.js的一些深層次概念,同時(shí)你還將學(xué)會(huì)如何真正部署 Node.js 應(yīng)用?! ”緯拿恳徽伦詈蠖加幸粋€(gè)參考資料小節(jié),里面有很多有價(jià)值的資料,如果感興趣不妨繼續(xù)深入閱讀。在閱讀本書的過程中,我建議你抽時(shí)間看看附錄B,在這里你會(huì)了解到Node.js 開發(fā)的一些編程規(guī)范,寫出符合社區(qū)風(fēng)格的漂亮程序?! ∪绾螌W(xué)習(xí) Node.js  通讀本書,你將會(huì)學(xué)到 Node.js 的很多東西,但如果想完全掌握它,我建議你親自嘗試運(yùn)行本書中的每一段代碼。本書的所有代碼可以在http://www.byvoid.com/project/node上找到。  除此之外,你最好自己用 Node.js 做一個(gè)項(xiàng)目,因?yàn)橥ㄟ^實(shí)踐你會(huì)遇到很多問題,解決這些問題可以大大加深對(duì) Node.js 的理解?! ∽⒁?,不要忘了互聯(lián)網(wǎng)網(wǎng)上的資源,比如Node.js 的官方 API 文檔http://nodejs.org/api/。我強(qiáng)烈推薦你去 CNodeJS 社區(qū)看看http://cnodejs.org/,這里匯集了許許多多中國(guó)優(yōu)秀的Node.js 開發(fā)者。他們每天都在討論著大量有關(guān)Node.js各個(gè)方面的話題,你可以在上面獲得很多幫助。同時(shí),CNodeJS 社區(qū)的網(wǎng)站也是用 Node.js 寫成的,而且是開源的,它是一個(gè)非常好的讓你了解如何用 Node.js 開發(fā)網(wǎng)站的實(shí)例?! ◇w例說明  本書正文中出現(xiàn)的代碼引用都會(huì)以等寬字體標(biāo)出,例如: console.log('Node.js')。代碼段會(huì)以段落的形式用等寬字體顯示,例如:  function hello() {  console.log('Hello, world!');  }  在正文之中,偶爾還會(huì)穿插一些提示和警告,例如:  這是一個(gè)提示?! ∵@是一個(gè)警告?! ≈轮x  感謝對(duì)這本書提出寶貴意見的朋友們,他們是牟瞳、李垚 、周越、鐘音、蕭騏 、楊旭東、孫嘉龍、范澤一、宋文杰、續(xù)本達(dá)、田勁鋒、孟亞蘭和李宇亮。他們?yōu)楸緯慕Y(jié)構(gòu)、內(nèi)容、語言表述等方面給出了許多有建設(shè)性的意見?! 「兄x CNodeJS 社區(qū)的賈超、田永強(qiáng)和微軟亞洲研究院的楊懋,以及VMware公司的柴可夫。他們不僅幫助審閱了本書,還解決了許多技術(shù)問題,給這本書提出了許多改進(jìn)方案?! 「兄x弓辰開發(fā)的 Rime 輸入法 ,我用它完成了本書的創(chuàng)作?! ∵€要感謝我的朋友徐可可,圖靈公司的楊海玲、謝工、王軍花以及各位編輯,她們給我提供了許多幫助和鼓舞,沒有她們的激勵(lì),我很難頂著巨大的學(xué)業(yè)壓力堅(jiān)持寫完這本書。 

內(nèi)容概要

  《Node.js開發(fā)指南》首先簡(jiǎn)要介紹Node.js,然后通過各種示例講解Node.js的基本特性,再用案例式教學(xué)的方式講述如何用Node.js進(jìn)行Web開發(fā),接著探討一些Node.js進(jìn)階話題,最后展示如何將一個(gè)Node.js應(yīng)用部署到生產(chǎn)環(huán)境中。
  《Node.js開發(fā)指南》面向?qū)ode.js感興趣,但沒有基礎(chǔ)的讀者,也可供已了解Node.js,并對(duì)Web前端/后端開發(fā)有一定經(jīng)驗(yàn),同時(shí)想嘗試新技術(shù)的開發(fā)者參考。

作者簡(jiǎn)介

郭家寶(BYVoid),清華大學(xué)計(jì)算機(jī)系2010級(jí)本科生,曾獲得信息學(xué)奧林匹克競(jìng)賽(NOI)金牌。他從中學(xué)開始涉足開源開發(fā),參與過“漢典網(wǎng)”等許多Web項(xiàng)目的前后端設(shè)計(jì)開發(fā),同時(shí)是Linux輸入法ibus-pinyin的作者。他從2009年Node.js誕生之始,就一直在關(guān)注它的發(fā)展,有許多使用Node.js建立網(wǎng)站的經(jīng)驗(yàn),活躍于CNode社區(qū)。

書籍目錄

目 錄
第1章 Node.js簡(jiǎn)介 1
1.1 Node.js是什么 2
1.2 Node.js能做什么 3
1.3 異步式I/O與事件驅(qū)動(dòng) 4
1.4 Node.js的性能 5
1.4.1 Node.js架構(gòu)簡(jiǎn)介 5
1.4.2 Node.js與PHP+Nginx 6
1.5 JavaScript簡(jiǎn)史 6
1.5.1 Netscape與LiveScript 7
1.5.2 Java與Javascript 7
1.5.3 微軟的加入——JScript 8
1.5.4 標(biāo)準(zhǔn)化——ECMAScript 8
1.5.5 瀏覽器兼容性問題 9
1.5.6 引擎效率革命和JavaScript的未來 9
1.6 CommonJS 10
1.6.1 服務(wù)端JavaScript的重生 10
1.6.2 CommonJS規(guī)范與實(shí)現(xiàn) 11
1.7 參考資料 12
第2章 安裝和配置Node.js 13
2.1 安裝前的準(zhǔn)備 14
2.2 快速安裝 14
2.2.1 Microsoft Windows系統(tǒng)上安裝Node.js 14
2.2.2 Linux發(fā)行版上安裝Node.js 16
2.2.3 Mac OS X上安裝Node.js 16
2.3 編譯源代碼 17
2.3.1 在POSIX系統(tǒng)中編譯 17
2.3.2 在Windows系統(tǒng)中編譯 18
2.4 安裝Node包管理器 18
2.5 安裝多版本管理器 19
2.6 參考資料 21
第3章 Node.js快速入門 23
3.1 開始用 Node.js編程 24
3.1.1 Hello World 24
3.1.2 Node.js命令行工具 25
3.1.3 建立HTTP服務(wù)器 26
3.2 異步式I/O與事件式編程 29
3.2.1 阻塞與線程 29
3.2.2 回調(diào)函數(shù) 31
3.2.3 事件 33
3.3 模塊和包 34
3.3.1 什么是模塊 35
3.3.2 創(chuàng)建及加載模塊 35
3.3.3 創(chuàng)建包 38
3.3.4 Node.js包管理器 41
3.4 調(diào)試 45
3.4.1 命令行調(diào)試 45
3.4.2 遠(yuǎn)程調(diào)試 47
3.4.3 使用Eclipse調(diào)試Node.js 48
3.4.4 使用node-inspector調(diào)試Node.js 54
3.5 參考資料 55
第4章 Node.js核心模塊 57
4.1 全局對(duì)象 58
4.1.1 全局對(duì)象與全局變量 58
4.1.2 process 58
4.1.3 console 60
4.2 常用工具util 61
4.2.1 util.inherits 61
4.2.2 util.inspect 62
4.3 事件驅(qū)動(dòng)events 63
4.3.1 事件發(fā)射器 64
4.3.2 error事件 65
4.3.3 繼承EventEmitter 65
4.4 文件系統(tǒng)fs 65
4.4.1 fs.readFile 66
4.4.2 fs.readFileSync 67
4.4.3 fs.open 67
4.4.4 fs.read 68
4.5 HTTP服務(wù)器與客戶端 70
4.5.1 HTTP服務(wù)器 70
4.5.2 HTTP客戶端 74
4.6 參考資料 77
第5章 使用Node.js進(jìn)行Web開發(fā) 79
5.1 準(zhǔn)備工作 80
5.1.1 使用http模塊 82
5.1.2 Express框架 83
5.2 快速開始 84
5.2.1 安裝Express 84
5.2.2 建立工程 85
5.2.3 啟動(dòng)服務(wù)器 86
5.2.4 工程的結(jié)構(gòu) 87
5.3 路由控制 89
5.3.1 工作原理 89
5.3.2 創(chuàng)建路由規(guī)則 92
5.3.3 路徑匹配 93
5.3.4 REST風(fēng)格的路由規(guī)則 94
5.3.5 控制權(quán)轉(zhuǎn)移 95
5.4 模板引擎 97
5.4.1 什么是模板引擎 97
5.4.2 使用模板引擎 98
5.4.3 頁(yè)面布局 99
5.4.4 片段視圖 100
5.4.5 視圖助手 100
5.5 建立微博網(wǎng)站 102
5.5.1 功能分析 102
5.5.2 路由規(guī)劃 102
5.5.3 界面設(shè)計(jì) 103
5.5.4 使用Bootstrap 104
5.6 用戶注冊(cè)和登錄 107
5.6.1 訪問數(shù)據(jù)庫(kù) 107
5.6.2 會(huì)話支持 110
5.6.3 注冊(cè)和登入 111
5.6.4 頁(yè)面權(quán)限控制 120
5.7 發(fā)表微博 123
5.7.1 微博模型 123
5.7.2 發(fā)表微博 125
5.7.3 用戶頁(yè)面 126
5.7.4 首頁(yè) 127
5.7.5 下一步 129
5.8 參考資料 129
第6章 Node.js進(jìn)階話題 131
6.1 模塊加載機(jī)制 132
6.1.1 模塊的類型 132
6.1.2 按路徑加載模塊 132
6.1.3 通過查找node_modules目錄加載模塊 133
6.1.4 加載緩存 134
6.1.5 加載順序 134
6.2 控制流 135
6.2.1 循環(huán)的陷阱 135
6.2.2 解決控制流難題 137
6.3 Node.js應(yīng)用部署 138
6.3.1 日志功能 138
6.3.2 使用cluster模塊 140
6.3.3 啟動(dòng)腳本 142
6.3.4 共享80端口 143
6.4 Node.js不是銀彈 144
6.5 參考資料 146
附錄A JavaScript的高級(jí)特性 147
附錄B Node.js編程規(guī)范 167
索引 175

章節(jié)摘錄

  Node.js,或者 Node,是一個(gè)可以讓 JavaScript 運(yùn)行在服務(wù)器端的平臺(tái)。它可以讓 JavaScript 脫離瀏覽器的束縛運(yùn)行在一般的服務(wù)器環(huán)境下,就像運(yùn)行 Python、Perl、PHP、Ruby 程序一樣。你可以用 Node.js 輕松地進(jìn)行服務(wù)器端應(yīng)用開發(fā),Python、Perl、PHP、Ruby 能做的事情 Node.js 幾乎都能做,而且可以做得更好。  Node.js 是一個(gè)為實(shí)時(shí)Web(Real-time Web)應(yīng)用開發(fā)而誕生的平臺(tái),它從誕生之初就充分考慮了在實(shí)時(shí)響應(yīng)、超大規(guī)模數(shù)據(jù)要求下架構(gòu)的可擴(kuò)展性。這使得它摒棄了傳統(tǒng)平臺(tái)依靠多線程來實(shí)現(xiàn)高并發(fā)的設(shè)計(jì)思路,而采用了單線程、異步式I/O、事件驅(qū)動(dòng)式的程序設(shè)計(jì)模型。這些特性不僅帶來了巨大的性能提升,還減少了多線程程序設(shè)計(jì)的復(fù)雜性,進(jìn)而提高了開發(fā)效率。  Node.js 最初是由 Ryan Dahl 發(fā)起的開源項(xiàng)目,后來被 Joyent 公司注意到。Joyent 公司將 Ryan Dahl 招入旗下,因此現(xiàn)在的 Node.js 由 Joyent 公司管理并維護(hù)。盡管它誕生的時(shí)間(2009年)還不長(zhǎng),但它的周圍已經(jīng)形成了一個(gè)龐大的生態(tài)系統(tǒng)。Node.js 有著強(qiáng)大而靈活的包管理器(node package manager,npm),目前已經(jīng)有上萬個(gè)第三方模塊,其中有網(wǎng)站開發(fā)框架,有 MySQL、PostgreSQL、MongoDB 數(shù)據(jù)庫(kù)接口,有模板語言解析、CSS 生成工具、郵件、加密、圖形、調(diào)試支持,甚至還有圖形用戶界面和操作系統(tǒng) API工具。由 VMware 公司建立的云計(jì)算平臺(tái) Cloud Foundry 率先支持了 Node.js。2011年6月,微軟宣布與 Joyent 公司合作,將 Node.js 移植到 Windows,同時(shí) Windows Azure 云計(jì)算平臺(tái)也支持 Node.js。Node.js 目前還處在迅速發(fā)展階段,相信在不久的未來它一定會(huì)成為流行的Web應(yīng)用開發(fā)平臺(tái)。讓我們從現(xiàn)在開始,一同探索 Node.js 的美妙世界吧!  1.1 Node.js 是什么  Node.js 不是一種獨(dú)立的語言,與 PHP、Python、Perl、Ruby 的“既是語言也是平臺(tái)”不同。Node.js 也不是一個(gè) JavaScript 框架,不同于 CakePHP、Django、Rails。Node.js 更不是瀏覽器端的庫(kù),不能與 jQuery、ExtJS 相提并論。Node.js 是一個(gè)讓 JavaScript 運(yùn)行在服務(wù)端的開發(fā)平臺(tái),它讓 JavaScript 成為腳本語言世界的一等公民,在服務(wù)端堪與 PHP、Python、Perl、Ruby 平起平坐。  Node.js 是一個(gè)劃時(shí)代的技術(shù),它在原有的 Web 前端和后端技術(shù)的基礎(chǔ)上總結(jié)并提煉出了許多新的概念和方法,堪稱是十多年來 Web 開發(fā)經(jīng)驗(yàn)的集大成者。Node.js 可以作為服務(wù)器向用戶提供服務(wù),與 PHP、Python、Ruby on Rails 相比,它跳過了 Apache、Nginx 等 HTTP 服務(wù)器,直接面向前端開發(fā)。Node.js 的許多設(shè)計(jì)理念與經(jīng)典架構(gòu)(如 LAMP)有著很大的不同,可提供強(qiáng)大的伸縮能力,以適應(yīng)21世紀(jì)10年代以后規(guī)模越來越龐大的互聯(lián)網(wǎng)環(huán)境?! ode.js 與 JavaScript  說起 JavaScript,不得不讓人想到瀏覽器。傳統(tǒng)意義上,JavaScript 是由 ECMAScript、文檔對(duì)象模型(DOM)和瀏覽器對(duì)象模型(BOM)組成的,而 Mozilla 則指出 JavaScript 由 Core JavaScript 和 Client JavaScript 組成。之所以會(huì)有這種分歧,是因?yàn)?JavaScript 和瀏覽器之間復(fù)雜的歷史淵源,以及其命途多舛的發(fā)展歷程所共同造成的,我們會(huì)在后面詳述。我們可以認(rèn)為,Node.js 中所謂的 JavaScript 只是 Core JavaScript,或者說是 ECMAScript 的一個(gè)實(shí)現(xiàn),不包含 DOM、BOM 或者 Client JavaScript。這是因?yàn)?Node.js 不運(yùn)行在瀏覽器中,所以不需要使用瀏覽器中的許多特性?! ode.js 是一個(gè)讓 JavaScript 運(yùn)行在瀏覽器之外的平臺(tái)。它實(shí)現(xiàn)了諸如文件系統(tǒng)、模塊、包、操作系統(tǒng) API、網(wǎng)絡(luò)通信等 Core JavaScript 沒有或者不完善的功能。歷史上將 JavaScript 移植到瀏覽器外的計(jì)劃不止一個(gè),但Node.js 是最出色的一個(gè)。隨著 Node.js 的成功,各種瀏覽器外的 JavaScript 實(shí)現(xiàn)逐步興起,因此產(chǎn)生了 CommonJS 規(guī)范。CommonJS 試圖擬定一套完整的 JavaScript 規(guī)范,以彌補(bǔ)普通應(yīng)用程序所需的 API,譬如文件系統(tǒng)訪問、命令行、模塊管理、函數(shù)庫(kù)集成等功能。CommonJS 制定者希望眾多服務(wù)端 JavaScript 實(shí)現(xiàn)遵循 CommonJS 規(guī)范,以便相互兼容和代碼復(fù)用。Node.js 的部份實(shí)現(xiàn)遵循了CommonJS規(guī)范,但由于兩者還都處于誕生之初的快速變化期,也會(huì)有不一致的地方。  Node.js 的 JavaScript 引擎是 V8,來自 Google Chrome 項(xiàng)目。V8 號(hào)稱是目前世界上最快的 JavaScript 引擎,經(jīng)歷了數(shù)次引擎革命,它的 JIT(Just-in-time Compilation,即時(shí)編譯)執(zhí)行速度已經(jīng)快到了接近本地代碼的執(zhí)行速度。Node.js 不運(yùn)行在瀏覽器中,所以也就不存在 JavaScript 的瀏覽器兼容性問題,你可以放心地使用 JavaScript 語言的所有特性?! ?hellip;…

媒體關(guān)注與評(píng)論

  “簡(jiǎn)潔的代碼示例,輕快的語言,這本書帶你進(jìn)入同樣簡(jiǎn)明的Node.js世界。如果你想立即使用Node.js進(jìn)行Web開發(fā),這里提供了絕佳的指導(dǎo)。”  ——楊懋,微軟亞洲研究院主管研究員  “本書是一本淺顯易懂的Node.js入門讀物,適合有一定JavaScript基礎(chǔ)的開發(fā)人員閱讀。讀過這本書,你就完成了從學(xué)習(xí)Node.js相關(guān)知識(shí),到使用Node.js構(gòu)建實(shí)際Web系統(tǒng)的全過程。難能可貴的是,本書在講解Node.js的同時(shí),還詳細(xì)介紹了Web開發(fā)領(lǐng)域的通用知識(shí)與原理,這些對(duì)開發(fā)完善健壯的Web應(yīng)用必不可少。”  ——賈超,淘寶網(wǎng)數(shù)據(jù)產(chǎn)品部資深經(jīng)理,CNode社區(qū)發(fā)起者  “在CNode社區(qū)企盼將近兩年后,第一本中文Node.js圖書終于誕生了。跟著家寶同學(xué)的這本《Node.js開發(fā)指南》,你就會(huì)走進(jìn)Node,初探到Node的好和美。”  ——田永強(qiáng)(樸靈),淘寶網(wǎng)數(shù)據(jù)產(chǎn)品部門前端工程師,CNode社區(qū)組織者之一

圖書封面

圖書標(biāo)簽Tags

評(píng)論、評(píng)分、閱讀與下載


    Node.js開發(fā)指南 PDF格式下載


用戶評(píng)論 (總計(jì)75條)

 
 

  •   適合入門node.js 適合了解node.js基本內(nèi)容,如果要想深入,這本書明顯不行,鑒于國(guó)內(nèi)目前還沒有node.js 書,還是很推薦這本書的!
  •   這本書的內(nèi)容講解比較細(xì)致例子很簡(jiǎn)單易懂。很容易學(xué)習(xí)而且能激發(fā)更高興趣。非常值得想學(xué)習(xí)node.js的新手入手。
  •   不錯(cuò),很實(shí)用,是學(xué)習(xí)node.js的好書籍
  •   關(guān)于Node.js的書就只有這么一本
  •   不錯(cuò)的書,學(xué)node.js的可以看看
  •   內(nèi)容啥的沒得說。想學(xué)習(xí)node的絕對(duì)值得一看
  •   對(duì)于node介紹很全面 但是沒有將很細(xì)小的地方寫出來
  •   研究前端的JS 比較多,后端的沒怎么研究,這本書入門應(yīng)該還不錯(cuò)!
  •   之前沒有接觸過NodeJS,由于公司要新做一個(gè)手游,然后我采用了NodeJS做服務(wù)器框架,表示還不錯(cuò) 通過這個(gè)學(xué)習(xí)了不少 現(xiàn)在項(xiàng)目完成 推薦下,有JS基礎(chǔ)的學(xué)起來很快的
  •   在豆瓣上,這本書的評(píng)價(jià)都挺高的,而且也打算深造一下js。本書附錄專門有講到j(luò)s的高級(jí)特性。
  •   作為想學(xué)習(xí)node.js的新手入手還是可以,值得一學(xué)。
  •   作者很厲害,之前聽過他的課。介紹的技術(shù)很新,服務(wù)器端的新語言
  •   oz+ymyvoid..........對(duì)于nodejs的介紹還算到位,繪制出了一個(gè)開發(fā)的框架,如果讀者有腳本編程的基礎(chǔ),可以很好地同本書的內(nèi)容結(jié)合起來提高能力。
  •   很適合從零開始的我,推薦。
  •   一直以來都在當(dāng)當(dāng)買書,沒有出現(xiàn)過大問題,一直很放心
  •   很水的一本書,基本上把能百度到的一些常識(shí)拼拼湊湊就出來一本。大部分點(diǎn)都是一語帶過,沒什么深度。薄薄一本。。。真心不值這個(gè)價(jià)。
  •   嗯,待讀,個(gè)人第一感覺還不錯(cuò)哦?。?!
  •   介紹的很多很詳細(xì),適合初學(xué)者
  •   瀏覽了下,很基礎(chǔ),通俗易懂,非常不錯(cuò)的一本書,推薦下
  •   研讀中,應(yīng)該不錯(cuò)
  •   好薄呀,還以為很厚呢,噠噠噠~······
  •   幫朋友買的。。他表示質(zhì)量不錯(cuò)
  •   簡(jiǎn)練,入門,還可以吧
  •   速度真是快,這回又有得看了。。
  •   很不錯(cuò),至少能將我講得8成明白。
  •   goode!!
  •   不二選的書 沒有之一
  •   覺得內(nèi)容還不夠
  •   nodejs入門讀物
  •   好書,入門不錯(cuò),講得還算詳細(xì)。
  •   值得適合入門學(xué)習(xí)
  •   這本送朋友的
  •   新人可以看看。
  •   還沒看完,書的質(zhì)量不錯(cuò),合適入門看。
  •   比較前衛(wèi)的知識(shí)
  •   但是里面的知識(shí),現(xiàn)在公司還用不上,呵呵
  •   很不錯(cuò)的一本書,nodejs入門必選。
  •   周日收到 4天零零散散的時(shí)間看了書的一半了
    挺系統(tǒng)的一門入門書
  •   書的質(zhì)量不錯(cuò),正版的確實(shí)好點(diǎn)
  •   有史以來買的最輕薄的技術(shù)類書籍,方便我蹲WC捧捧,呵呵
  •   還沒看,再說
  •   入門級(jí)讀物,大致介紹了些Node.js的功能和用途,通過一個(gè)完整的博客系統(tǒng)為例子,說了一下大概的使用
  •   這本書應(yīng)該不錯(cuò)。Node.js。不知道未來有沒有發(fā)展空間。
  •   對(duì)于學(xué)習(xí)node.js還是很有幫助的
  •   第一次學(xué)習(xí)node,這本書講解的不錯(cuò)。
  •   不錯(cuò),就是Node更新的速度太快了
  •   學(xué)習(xí)中,非常好奇如何用script寫服務(wù)器
  •   看了大概,令我對(duì)這技術(shù)有一定的了解。不過上手有點(diǎn)難度。
  •   就是有點(diǎn)小貴,以后還是多混社區(qū)的好
  •   老公買的,就說是新出的,看他一直在看,應(yīng)該不錯(cuò)
  •   還湊合吧,中文資料不多
  •   想通過這本書來入門
  •   不過翻了翻,就找到了我想學(xué)的東東。買了值了。
  •   十一假期看完了這本書。國(guó)內(nèi)作者,寫的還可以,值得一讀,入門不錯(cuò)。真的要實(shí)踐起來還是略顯單薄,不是指頁(yè)數(shù)。
  •   一般還行吧,但是內(nèi)容還是少了點(diǎn)
  •   書送到的時(shí)候,邊邊都沒磨壞了
  •   適合初學(xué)者。。。。。。。。
  •   感覺這本書寫的不夠詳細(xì)知識(shí)不是太多
  •   適合入門,但是感覺在當(dāng)當(dāng)買的技術(shù)類的書都是被被人看過的,感覺像舊書。
  •   書太薄,內(nèi)容少了點(diǎn)
  •   作為入門者看起來還算舒服。。。
  •   基礎(chǔ)入門級(jí),介紹的不錯(cuò)
  •   花了一個(gè)晚上看完了,除了第5章,好處:一個(gè)晚上入門了,可以應(yīng)付項(xiàng)目中需要缺點(diǎn):太簡(jiǎn)單了,一個(gè)晚上就看完了。
  •   著本書178頁(yè),感覺也有點(diǎn)薄。等看完再回來評(píng)。
  •   如果有別的書,我想我不會(huì)選擇它的
  •   感覺這本書,一般,只有一個(gè)好處,那就是對(duì)NODEJS有一個(gè)大體認(rèn)識(shí),其它沒有。
  •   入門基本的書而已。太薄了
  •   揣著一個(gè)初學(xué)者的心翻開來看這本書,但是你敢把最基本的幾個(gè)環(huán)境下的安裝方法介紹得細(xì)致點(diǎn)么?好多代碼貌似可以不看;涉及到重要原理的地方總感覺一帶而過,不重要的倒是不少;當(dāng)api書看吧,東西不全;當(dāng)學(xué)習(xí)書籍吧,不如看api;難得買本國(guó)產(chǎn)書籍,又失望了。。。--------------------------------------------------純屬個(gè)人觀點(diǎn),勿許參考
  •   就是到官方把文檔翻譯一遍,沒有什么用
  •   書本封皮爛了 內(nèi)容沒看
  •   非常的超值?。。。。?!給力!滿分
  •   給老公買點(diǎn)呃
  •   好又快好又快
  •   算是入門了NODE.JS
  •   海沒有來得及看哦,再細(xì)細(xì)看下
 

250萬本中文圖書簡(jiǎn)介、評(píng)論、評(píng)分,PDF格式免費(fèi)下載。 第一圖書網(wǎng) 手機(jī)版

京ICP備13047387號(hào)-7