庫存狀況
「香港二樓書店」讓您 愛上二樓●愛上書
我的購物車 加入會員 會員中心 常見問題 首頁
「香港二樓書店」邁向第一華人書店
登入 客戶評價 whatsapp 常見問題 加入會員 會員專區 現貨書籍 現貨書籍 購物流程 運費計算 我的購物車 聯絡我們 返回首頁
香港二樓書店 > 今日好書推介
   
地圖+地圖創意遊戲 (附行旅世界地圖包)
  • 定價650.00元
  • 8 折優惠:HK$520
  • 放入購物車
二樓書籍分類
 
JavaScript再上一層樓:用新一代Node.js把後端也搞定

JavaScript再上一層樓:用新一代Node.js把後端也搞定

沒有庫存
訂購需時10-14天
9789863796725
李鍇
佳魁資訊
2018年7月05日
207.00  元
HK$ 175.95  






ISBN:9789863796725
  • 規格:平裝 / 432頁 / 17 x 23 x 2 cm / 普通級 / 單色印刷 / 初版
  • 出版地:台灣


  • 電腦資訊 > 網頁開發設計 > 網頁設計概論

















    本書特色



      詳述最新特性 / 緊跟技術潮流

      本書立足於新的技術潮流,介紹了一系列全新的語言特性與標準,以便讓讀者在學習基礎知識的同時,緊跟嶄新技術的發展。



      ? 從零開始學習開發完整可應用的專案,掌握Node.js基礎細節並獲得實際經驗。

      ? 以實際應用為背景,闡述Node.js在實際專案中的定位與潛在的陷阱。

      ? 適合沒有Node.js經驗的讀者,目標除使讀者能快速上手外,亦能獨立開發出Node.js的小型應用。



      適用:欲接觸或對Node有興趣的讀者最佳入門書,亦適合相關領域之從業人員與大學、研究所師生作為參考之用。



      本書範例程式可至佳魁資訊官網下載


     





    01 基礎知識

    1.1 Node是什麼

    1.2 Node的內部機制

    1.3 事件循環(Event loop)

    1.4 本章結語

    1.5 參考資源



    02 常用模組

    2.1 Module

    2.2 Buffer

    2.3 File System

    2.4 HTTP服務

    2.5 TCP服務

    2.6 更安全的傳輸方式—SSL

    2.7 WebSocket

    2.8 Stream

    2.9 Events

    2.10 多處理程序服務

    2.11 Process物件

    2.12 Timer

    2.13 本章結語

    2.14 參考資源



    03 用ES6 來撰寫Node

    3.1 新時代的EMCAScript

    3.2 區塊級作用域

    3.3 陣列

    3.4 函數

    3.5 Set和Map

    3.6 Iterator

    3.7 物件

    3.8 類別

    3.9 類別的繼承

    3.10 ES6的模組化標準

    3.11 使用babel來轉換程式

    3.12 本章結語

    3.13 參考資源



    04 撰寫非同步程式

    4.1 非同步作業的傳回值

    4.2 組織回呼方法

    4.3 使用Promise

    4.4 Generator,一種過渡方案

    4.5 回呼的終點—async/await

    4.6 本章結語

    4.7 參考資源



    05 使用Koa2 建置Web網站

    5.1 Node Web架構的發展歷程

    5.2 內容規劃

    5.3 Koa入門

    5.4 middleware

    5.5 常用服務的實現

    5.6 建置穩固的Web 應用

    5.7 使用Redis進行持久化

    5.8 Koa原始程式剖析

    5.9 網站部署

    5.10 本章結語

    5.11 參考資源



    06 爬蟲系統的開發

    6.1 爬蟲技術概述

    6.2 技術堆疊簡介

    6.3 建置腳手架

    6.4 進行批次爬取

    6.5 爬蟲架構的改進

    6.6 處理程序架構的改進

    6.7 反爬蟲處理

    6.8 本章結語

    6.9 參考資源



    07 測試與偵錯

    7.1 單元測試

    7.2 測試現有程式

    7.3 更高維度的測試

    7.4 偵錯Node應用

    7.5 本章結語

    7.6 參考資源



    08 Node 中的錯誤處理

    8.1 Error模組

    8.2 錯誤處理的幾種方式

    8.3 被拋棄的Domain

    8.4 ES6中的錯誤處理

    8.5 Web服務中的錯誤處理

    8.6 防禦式程式設計與Let it crash

    8.7 本章結語

    8.8 參考資源



    A 處理程序、執行緒、程式碼協同

    B Lua語言簡介

    C 從零開發一個Node Web架構

    D MongoDB和Redis簡介

    E 使用Docker來實現虛擬化

    F npm與套件管理





    前言



      筆者在2014年初第一次接觸Node,距今已經差不多有4年的時間了。對一種高速發展的語言來說,4年算得上很長的時間了。4年前Node的版本還在0.10.x,而時至今日,已經迎向v8.0.0的最新版本了。



      Node專案始於2009年,2013年剛好處在當今(2018年)和2009年的中間點,一種語言在誕生之初的發展總是最快的,到了現在,Node逐漸趨於穩定。



      但即使如此,這4年中也發生了不少大事件:Node從分裂又走向了統一,ES2015標準的推出等。



      那麼,4年後的今天,Node有了哪些改變呢?

      一方面,基本的概念幾乎沒有改變,底層的libuv和事件循環還是原來的樣子,主要模組的API也沒什麼太大變化。



      另一方面,變動最多的大概是語法了,ECMAScript沉寂數年之後,終於推出了重量級的新版本ES2015,並且計畫每年發布一個新版本。



      換個角度來說,如果現在有一份使用Node最新版本寫的程式,拿給還在使用0.10的開發者看,最大可能是對裡面各種奇怪的關鍵字和語法感到疑惑。這就說明了Node發生了如此大的變動。



      在筆者看來,Node的發展進入了平台期,這表示在一段時間內,Node將維持現有的模樣,或許會增加或修改一些語法,底層的V8也可能做一些大幅度的改進,但程式的基本結構不會有太大的變動。



      Node的發展大致分為幾個階段:

      ?第一個階段:從誕生到分裂,大致5年的時間。

      ?第二個階段:從與io.js合併到ES2015標準正式落地,只有不到半年的時間。

      ?第三個階段:從v6.0.0全面支援ES2015至今,Node較大的更新都是圍繞著新的ECMA201x標準展開的。



      所有的新與舊都是相對的,雖然在目前來看,本書記述的內容還算是比較新的,無論是ES201x的使用,還是Koa2架構的介紹,都屬於同類書中較少相關的領域,但要是再過幾年的時間,本書的內容也會變得過時。



      關於本書內容

      本書不是一本ES2015或更新標準的說明書,也不想讓內容停留在介紹各種模組的API羅列上。

      第1章? 說明Node的執行機制,主要是底層的一些實現和通用的原理,讀者可能需要一些作業系統的知識。

      第2章? 介紹了通用的模組和使用方法,是真正的入門章節。

      第3章? 專注於新的ECMAScript標準以及Node對其的支援。

      第4章? 主要介紹如何更進一步地組織和撰寫非同步程式,採用循序漸進的方式介紹了各種解決方案的優劣之處。

      第5章? 使用Koa2架構來開發一個Web應用,有關Web開發的各方面,例如路由處理、Session、頁面繪製、資料儲存等。

      第6章? 介紹了如何使用Node來開發一個爬蟲系統。

      第7章? 介紹常用的測試方法以及偵錯Node應用的技巧。

      第8章? 介紹了Node中錯誤處理的相關知識。

      附錄A? 介紹處理程序、執行緒和程式碼協同的概念,屬於擴充的背景知識。

      附錄B? Lua語言簡介,Lua幾乎可以認為是某些概念的最佳實現,例如程式碼協同。

      附錄C? 從零開發了一個玩具式的Web架構,可以認為是對Koa的簡單模仿,對於初學者來說,這應該是一個了解Node Web原理的好方法。

      附錄D? MongoDB和Redis簡介。

      附錄E? 使用Docker來實現虛擬化。

      附錄F? 介紹了使用npm來進行套件管理的一些小技巧。

     

      本書的每個章節都是環環相扣的,每一章說明的內容都多多少少被其他章節使用到,建議讀者循序漸進地閱讀(第1章可以放到最後)。



      循序漸進不僅表現在章節安排上,在系統的實現上也是如此,以第6章爬蟲的開發為例,從糟糕的程式設計開始,一步步進行改進,最後達到較完整的狀態。



      那些糟糕的程式大部分都是在筆者還是初學者時寫的,筆者很慶倖自己還能留著這些程式,它們不僅見證了筆者本人對Node的認識過程,也見證了Node的發展歷史。

    ?




    其 他 著 作