作 者:趙榮嬌 著
定 價:69
出 版 社:清華大學出版社
出版日期:2020年08月01日
頁 數:331
裝 幀:平裝
ISBN:9787302557067
Node.js是一門開源的、為Web而生的語言,具有高並發、異步等特點,並且擁有一個十分活躍的開發者社區。本書以實戰為主旨,通過Node.js 12開發中常用的原生模塊和典型的案例,讓讀者全面、深入、透徹地理解Node.js開發技術、主流框架及其整合使用,提高實際開發水平和項目實戰能力。
●目 錄第1章 Node.js與JavaScript11.1 JavaScript與前端11.2 第一個JavaScript實現的Hello World11.3 Node.js 12安裝前的準備31.3.1 在Microsoft Windows繫統上安裝Node.js31.3.2 在Linux發行版上安裝Node.js51.3.3 在Mac OS X上安裝Node.js71.3.4 Mac OS X中Node.js版本的切換和升級71.4 JavaScript與Node.js對比101.5 第一個Node.js實現的Hello World101.5.1 純腳本示例101.5.2 交互模式111.5.3 創建Node.js項目111.6 Node.js的開發調試工具Inspect12第2章 NPM、REPL與Node.js工作原理152.1 NPM的使用152.1.1 NPM簡介152.1.2 NPM的工作原理162.1.3 package.json屬性說明172.1.4 NPM的常用命令192.2 REPL的使用212.3 Runtime和vm222.3.1 Runtime222.3.2 vm232.4 回調函數242.5 同步/異步和阻塞/非阻塞252.5.1 同步和異步262.5.2 阻塞和非阻塞282.5.3 同步/異步和阻塞/非阻塞292.6 單線程和多線程292.7 並行和並發302.8 事件循環31第3章 Node.js的語法343.1 ECMAScript 6標準343.2 數組常用方法及ES6中的數組方法343.3 函數403.3.1 參數的默認值403.3.2 rest參數443.3.3 name屬性453.3.4 箭頭函數463.4 閉包493.5 對像513.5.1 屬性的簡潔表示523.5.2 屬性名表達式533.5.3 方法的name屬性553.5.4 對像的擴展運算符563.5.5 對像的新方法583.5.6 屬性的可枚舉性673.5.7 屬性的遍歷683.6 類693.6.1 基礎用法693.6.2 封裝與繼承743.6.3 super關鍵字773.7 ES6的模塊化783.7.1 基本用法783.7.2 as 的用法793.7.3 import命令的特點803.7.4 export與import813.8 使用Babel轉碼823.9 使用N-API84第4章 Node.js常用模塊884.1 Module884.1.1 創建和使用模塊884.1.2 require方法中的文件查找策略894.2 Buffer934.2.1 Buffer與字符編碼及轉換934.2.2 Buffer類及其方法944.2.3 Buffer與性能994.3 File System994.3.1 異步讀文件1004.3.2 同步讀文件1014.3.3 打開文件1024.3.4 寫入文件1034.3.5 獲取文件信息1044.3.6 fs.read異步讀文件1054.3.7 fs.close異步關閉文件1064.4 HTTP/HTTP2服務1074.4.1 http模塊1084.4.2 http2模塊1114.5 TCP服務1144.5.1 構建TCP服務器1154.5.2 服務器和客戶端之間的通信1184.5.3 構建TCP客戶端1194.6 SSL1214.6.1 SSL簡介1214.6.2 使用OpenSSL進行證書生成1234.6.3 Node.js實現HTTPS的配置1254.7 WebSocket1264.7.1 ws模塊1264.7.2 實戰:ws簡易聊天室1284.8 流1364.8.1 可讀流1374.8.2 可寫流1384.8.3 管道流1404.9 事件1414.9.1 注冊事件名&監聽器1424.9.2 給監聽器listener傳入參數與this1434.9.3 最多隻觸發一次的監聽器1434.9.4 添加監聽器/移除監聽器事件1444.9.5 錯誤事件1444.10 實戰演練RESTful API145第5章 Node.js調試1525.1 基礎調試1525.1.1 基礎API1525.1.2 自定義stdout1545.1.3 控制調試日志1555.2 進階調試1605.2.1 使用Inspect調試1615.2.2 使用VSCode IDE調試164第6章 Node.js的異步I/O與多線程1676.1 異步I/O1676.1.1 異步I/O的必要性1676.1.2 操作繫統對異步I/O的支持1686.1.3 異步I/O與輪詢技術1696.2 進程、線程、協程等1696.2.1 進程、線程、協程1696.2.2 應用場景1716.2.3 並發與並行1716.3 在Node.js中實現多線程1726.3.1 單線程的JavaScript1726.3.2 Node.js 內部分層1746.3.3 libuv1746.3.4 多進程1756.4 Node性能小結176第7章 Node.js的錯誤處理1777.1 錯誤的分類1777.2 函數的錯誤處理1787.3 實戰演練異常-錯誤處理1797.3.1 同步代碼的異常捕獲處理1797.3.2 異步代碼的錯誤處理1807.3.3 使用event方式來處理異常1817.3.4 Callback方式1827.3.5 Promise方式1827.3.6 使用domain模塊1857.3.7 多進程模式加異常捕獲後重啟186第8章 Node.js的測試1888.1 什測試1888.2 一個簡測試1898.3 Mocha1908.4 Assert1928.5 測試HTTP接口1968.6 代碼覆蓋率工具istanbul197第9章 Node.js的數據處理1999.1 MySQL1999.1.1 Node.js 連接 MySQL1999.1.2 數據庫操作2009.1.3 使用Sequelize操作數據庫2029.2 MongoDB2089.2.1 創建數據庫2089.2.2 數據庫操作2099.3 Redis2159.3.1 Node.js連接Redis2159.3.2 列表——List2179.3.3 集合——Set2189.3.4 消息中介218第10章 實戰:使用原生JavaScript開發Node.js案例22010.1 項目任務22010.2 HTTP服務器22110.3 服務端模塊化22310.4 設計請求路由22410.5 請求處理程序22910.6 非阻塞式處理請求響應23210.7 處理 T請求23510.8 文件上傳241第11章 實戰:基於Vue+Express+MongoDB實現一個後臺管理繫統24811.1 項目結構24811.2 前端代碼實現24911.2.1 項目依賴的模塊24911.2.2 注冊頁25011.2.3 登錄頁25411.2.4 管理頁25811.3 後端代碼實現26611.3.1 數據庫設計26611.3.2 啟動應用26811.3.3 注冊/登錄接口26811.3.4 增刪改查接口271第12章 實戰:基於Koa+MongoDB 實現博客網站27912.1 項目結構27912.2 數據庫設計28112.2.1 數據準備28112.2.2 連接數據庫28112.2.3 創建表結構28212.3 服務端實現28312.3.1 啟動後臺應用28312.3.2 配置中間件28312.3.3 搭建路由和控制器28712.3.4 賬戶管理29012.3.5 博客管理29412.4 博客後臺管理的實現29712.4.1 目錄結構29712.4.2 權限管理29712.4.3 博客管理30912.5 博客前臺站點的實現32212.5.1 目錄結構32212.5.2 博客列表頁32312.5.3 博客詳情頁327
本書分為四大部分共17章,第一部分為Nodejs 12概述和開發環境介紹,共兩章。第二部分是Nodejs 12編程基礎,主要介紹Nodejs編程的基本知識。第三部分為Nodejs開發實踐,全面講解Nodejs在實際開發中的具體應用和實際案例。第四部分Nodejs開發項目實例,以項目的形式為讀者深入講解建立一個Nodejs應用的整個過程。
趙榮嬌 著
趙榮嬌,飛豬旅行前端開發工程師,擅長CSS、JavaScript和各種框架,參與寫作或翻譯過多本前端精品圖書。喜歡旅行,熱愛前端開發,樂於分享。