- Node.js權威指南
- 陸凌牛
- 1264字
- 2019-01-01 00:13:21
前言
為何寫作本書
近年來,隨著智能手機與HTML 5的不斷普及,JavaScript腳本語言的重要性也隨之不斷提升,IT業界涌現了大量學習與善用JavaScript腳本語言的工程師,其中許多工程師對任何服務器端開發語言均一無所知。很多工程師提出,如果能夠讓服務器端與客戶端均使用一種腳本語言,則無疑可以減少服務器端的開發難度,提高服務器端的開發效率。另一方面,由于近幾年許多JavaScript引擎中均內置了JIT(Just In Time)編譯器,使JavaScript引擎的處理速度得到了大幅度提高,JavaScript腳本語言的運行速度不會遜色于任何服務器端開發語言。
據此現狀,2009年8月,IT業界制定了CommonJS標準,用于標準化服務器端JavaScript腳本語言,制定服務器端JavaScript腳本語言中所需要實現的處理。
同年,美國人Ryan Dahl推出了第一個遵循CommonJS標準的服務器端JavaScript腳本語言開發框架——Node.js。在Node.js內部,運行的是Google開發的高性能V8JavaScript腳本語言,該語言可以運行在服務器端。Node.js的一個最重要的特性是通過單線程實現異步處理環境。通常,提及異步處理,開發者們首先會聯想到的是服務器端多線程環境,在Node.js中,通過事件環與非阻塞型I/O機制實現服務器端的異步處理。
為了幫助國內的Web開發者更好地學習Node.js開發框架,筆者特此推出本書,希望國內的Web開發者們能夠通過學習本書盡早地運用Node.js框架開發出高效的Web服務器以及運行于該Web服務器中的Web應用程序。
讀者對象
根據不同使用需要,本書適用于如下讀者:
·對Web網站或Web應用程序的開發技術感興趣或者打算從事Web網站或Web應用程序開發的技術人員。
·Web網站或Web應用程序的開發者(包括Web前端開發工程師及后端開發工程師)。
·有關Web網站或Web應用程序開發項目的項目管理人員。
·開設相關課程的大專院校及培訓機構。
如何閱讀本書
本書內容分三大部分展開。
第一部分:第1章詳細闡述什么是Node.js框架,為什么要選擇Node.js框架進行服務器端的開發,使用Node.js框架能夠解決什么問題,Node.js框架適合用于開發哪些應用程序,如何下載及使用Node.js框架,Node.js框架的主要特性,使用Node.js框架時必須了解的基礎知識。第2章~第12章針對Node.js v0.10版中的各模塊進行展開闡述,詳細闡述這些模塊的作用,如何使用這些模塊,這些模塊中所提供的各對象、屬性、方法及事件。
第二部分:第13章~第15章分別闡述在使用Node.js框架進行Web服務器端的開發時極有可能利用到的第三方開發包,包括如何在Node.js應用程序中使用關系型數據庫及NoSQL型數據庫,如何使用Express框架開發Web應用程序,如何使用Socket.io類庫實現WebSocket通信。
第三部分:第16章介紹兩個綜合案例,在第一個案例中,我們講述如何結合使用Node.js與Socket.io類庫制作一個聊天室應用程序的服務器端及客戶端,在第二個綜合案例中,我們講述如何結合使用Node.js與Express框架制作一個Web應用程序的服務器端及客戶端。
在本書的每一章中,每一個正在闡述的理論點均使用代碼實例進行具體形象地說明,每個實例中所涉及的理論知識都以通俗易懂的語言進行闡述,大部分實例均使用圖片來形象說明該實例的運行效果。本書所有實例代碼都經筆者親自測試運行成功,提供給讀者學習使用。每個實例的詳細代碼及其使用到的腳本文件、各種資源文件都可在華章公司網站(www.hzbook.com)的本書頁面上下載。讀者可以對這些代碼進行修改,以便觀察各種不同效果,加深對實例代碼的理解。
- Learning Python Web Penetration Testing
- Learning NServiceBus(Second Edition)
- Android應用程序開發與典型案例
- Building Mapping Applications with QGIS
- JSP開發案例教程
- 名師講壇:Spring實戰開發(Redis+SpringDataJPA+SpringMVC+SpringSecurity)
- 劍指MySQL:架構、調優與運維
- 前端HTML+CSS修煉之道(視頻同步+直播)
- Flutter跨平臺開發入門與實戰
- Django 3.0應用開發詳解
- PrimeFaces Blueprints
- Learning JavaScript Data Structures and Algorithms(Second Edition)
- Getting Started with Python
- 從0到1:HTML5 Canvas動畫開發
- Qt 4開發實踐