中图网(原中国图书网):网上书店,尾货特色书店,30万种特价书低至2折!

歡迎光臨中圖網 請 | 注冊
> >>
新時期的Node.js入門

包郵 新時期的Node.js入門

作者:李鍇著
出版社:清華大學出版社出版時間:2018-01-01
開本: 32開 頁數: 279
中 圖 價:¥39.2(8.0折) 定價  ¥49.0 登錄后可看到會員價
加入購物車 收藏
開年大促, 全場包郵
?新疆、西藏除外
本類五星書更多>
買過本商品的人還買了

新時期的Node.js入門 版權信息

  • ISBN:9787302487807
  • 條形碼:9787302487807 ; 978-7-302-48780-7
  • 裝幀:一般膠版紙
  • 冊數:暫無
  • 重量:暫無
  • 所屬分類:>>

新時期的Node.js入門 本書特色

Node.js是一門開源的、為Web而生的語言,具有高并發、異步等特點,并且擁有一個十分活躍的開發者社區。與Ruby、Python等語言相比,Node.js更年輕、更易于沒有經驗的人上手使用,因此很快在世界各地的開發者中收獲了一大批擁躉。在國內,Node.js在許多企業中獲得了廣泛應用,并取得了一系列的應用成果。然而,隨著技術的不斷更新、ECMAScript2015等新標準紛紛確定,現有的中文書籍就變得有些過時。本書立足于新的技術潮流,介紹了一系列全新的語言特性和標準,以便讓讀者在學習基礎知識的同時緊跟新技術的發展。 本書分為8章6個附錄,講解了Node.js的各種基礎特性,使讀者快速入門,同時結合語言*的發展趨勢,讓讀者能夠緊跟技術潮流。本書圍繞Node.js在Web站點開發和爬蟲系統中的應用展開,對Node.js在大型項目中的定位與應用做了詳細的說明。 本書可用于Node.js入門,適合未接觸過Node的讀者以及在校的學生閱讀,也適合作為高等院校和培訓學校相關專業的師生教學參考。

新時期的Node.js入門 內容簡介

從零開始學習開發完整可用的項目,掌握語言細節并獲得實際經驗以實際應用為背景,闡述Node.js在實際項目中的定位和潛在的陷阱適合沒有Node.js經驗的讀者,旨在快速上手到獨立開發小型應用

新時期的Node.js入門 目錄

目錄 第1章 基礎知識 1 1.1 Node是什么 1 1.1.1 Node與JavaScript 1 1.1.2 runtime和VM 2 1.2 Node的內部機制 3 1.2.1 何為回調 3 1.2.2 同步/異步和阻塞/非阻塞 4 1.2.3 單線程和多線程 6 1.2.4 并行和并發 7 1.3 事件循環(Event loop) 8 1.3.1 事件與循環 8 1.3.2 Node中的事件循環 9 1.3.3 process.nextTick 13 1.4 總結 16 1.5 參考資源 16 第2章 常用模塊 17 2.1 Module 17 2.1.1 JavaScript的模塊規范 17 2.1.2 require及其運行機制 18 2.1.3 require的隱患 20 2.1.4 模塊化與作用域 20 2.2 Buffer 22 2.2.1 Buffer的構建與轉換 23 2.2.2 Buffer的拼接 24 2.3 File System 26 2.4 HTTP服務 30 2.4.1 創建HTTP 服務器 30 2.4.2 處理HTTP請求 32 2.4.3 Response對象 34 2.4.4 上傳數據 35 2.4.5 HTTP客戶端服務 38 2.4.6 創建代理服務器 39 2.5 TCP服務 40 2.5.1 TCP和Socket 41 2.5.2 創建TCP服務器 41 2.6 更安全的傳輸方式——SSL 42 2.6.1 什么是SSL 43 2.6.2 SSL原理 43 2.6.3 對稱加密與非對稱加密 44 2.6.4 關于CA 45 2.6.5 創建HTTPS服務 45 2.7 WebSocket 48 2.7.1 保持通話 48 2.7.2 為什么要有WebSocket 49 2.7.3 WebSocket與Node 50 2.8 Stream 50 2.8.1 Stream 的種類 50 2.8.2 ReadLine 53 2.8.3 自定義Stream 54 2.9 Events 55 2.9.1 事件和監聽器 55 2.9.2 處理error事件 56 2.9.3 繼承Events模塊 57 2.10 多進程服務 58 2.10.1 child_process模塊 58 2.10.2 spawn 58 2.10.3 fork 59 2.10.4 exec和execFile 60 2.10.5 各方法之間的比較 62 2.10.6 進程間通信 64 2.10.7 Cluster 65 2.11 Process對象 66 2.11.1 環境變量 67 2.11.2 方法和事件 67 2.11.3 一個例子:修改所在的時區 68 2.12 Timer 70 2.12.1 常用API 70 2.12.2 定時器中的this 71 2.13 小結 72 2.14 引用資源 72 第3章 用ES6來書寫Node 73 3.1 新時代的EMCAScript 73 3.1.1 JavaScript的缺陷 73 3.1.2 Node對新標準的支持 74 3.1.3 使用nvm管理Node版本 75 3.2 塊級作用域 75 3.2.1 ES5中的作用域 75 3.2.2 let關鍵字 77 3.2.3 const關鍵字 78 3.3 數組 78 3.3.1 find()和findIndex() 79 3.3.2 from()方法 79 3.3.3 fill()方法 81 3.3.4 數組的遍歷 81 3.3.5 TypedArray 82 3.4 函數 82 3.4.1 參數的默認值 82 3.4.2 Spread運算符 83 3.4.3 箭頭函數 83 3.4.4 箭頭函數的陷阱 86 3.5 Set和Map 87 3.5.1 Set和WeakSet 87 3.5.2 Map和WeakMap 88 3.6 Iterator 89 3.6.1 Java中的Iterator 89 3.6.2 ES6中的Iterator 89 3.6.3 Iterator的遍歷 90 3.7 對象 91 3.7.1 新的方法 91 3.7.2 對象的遍歷 92 3.8 類 93 3.8.1 屬性和構造函數 94 3.8.2 類方法 94 3.8.3 __proto__ 95 3.8.4 靜態方法 96 3.9 類的繼承 96 3.9.1 ES5中的繼承 96 3.9.2 ES6中的繼承 98 3.9.3 Node中的類繼承 100 3.10 ES6的模塊化標準 101 3.11 使用babel來轉換代碼 102 3.12 小結 106 3.13 引用資源 106 第4章 書寫異步代碼 107 4.1 異步操作的返回值 108 4.2 組織回調方法 108 4.2.1 回調與CPS 108 4.2.2 使用async模塊簡化回調 110 4.3 使用Promise 112 4.3.1 Promise的歷史 112 4.3.2 Promise是什么 113 4.3.3 ES2015中的Promise 114 4.3.4 Promise的常用API 116 4.3.5 使用Promise組織異步代碼 119 4.3.6 第三方模塊的Promise 120 4.4 Generator,一種過渡方案 122 4.4.1 Generator的使用 122 4.4.2 Generator函數的執行 123 4.4.3 Generator中的錯誤處理 126 4.4.4 用Generator組織異步方法 127 4.4.5 Generator的自動執行 128 4.5 回調的終點——async/await 131 4.5.1 async函數的概念 131 4.5.2 await關鍵字 133 4.5.3 在循環中使用async方法 135 4.5.4 async和await小結 136 4.5.5 async 函數的缺點 137 4.6 總結 138 4.7 引用資源 139 第5章 使用Koa2構建Web站點 140 5.1 Node Web框架的發展歷程 140 5.1.1 Connect 140 5.1.2 Express 141 5.1.3 Koa 141 5.2 內容規劃 142 5.2.1 需求分析 142 5.2.2 技術選型 142 5.3 Koa入門 143 5.3.1 Koa1.x 與Koa2 143 5.3.2 context對象 144 5.4 middleware 148 5.4.1 中間件的概念 148 5.4.2 next方法 150 5.4.3 中間件的串行調用 151 5.4.4 一個例子——如何實現超時響應 152 5.5 常用服務的實現 154 5.5.1 靜態文件服務 154 5.5.2 路由服務 155 5.5.3 數據存儲 156 5.5.4 文件上傳 160 5.5.5 頁面渲染 163 5.6 構建健壯的Web應用 165 5.6.1 上傳文件驗證 166 5.6.2 使用Cookie進行身份驗證 167 5.6.3 使用Session記錄會話狀態 170 5.7 使用Redis進行持久化 173 5.7.1 Node和Redis的交互 173 5.7.2 CURD操作 174 5.7.3 使用Redis持久化session 176 5.7.4 Redis在Node中的應用 179 5.8 Koa源碼剖析 180 5.8.1 Koa的啟動過程 180 5.8.2 中間件的加載 181 5.8.3 listen()方法 184 5.8.4 next()與return next() 185 5.8.5 關于Can't set headers after they are sent. 186 5.8.6 Context對象的實現 187 5.8.7 Koa的優缺點 189 5.9 網站部署 190 5.9.1 本地部署 190 5.9.2 部署在云服務主機上 191 5.9.3 通過GitHub pages來部署 193 5.10 總結 194 5.11 引用資源 194 第6章 爬蟲系統的開發 195 6.1 爬蟲技術概述 196 6.2 技術棧簡介 196 6.2.1 request.js 196 6.2.2 cheerio 197 6.2.3 消息隊列 199 6.3 構建腳手架 199 6.3.1 選擇目標網站 199 6.3.2 分析URL結構 200 6.3.3 構建HTTP 請求 200 6.3.4 解析頁面元素 201 6.4 進行批量爬取 203 6.4.1 使用遞歸和定時器 203 6.4.2 多進程并行 205 6.5 爬蟲架構的改進 206 6.5.1 異步流程控制 206 6.5.2 回到*初的目標 206 6.5.3 多進程模型的缺陷 208 6.6 進程架構的改進 208 6.6.1 生產/消費模型 208 6.6.2 生產者的實現 209 6.6.3 消費者的實現 211 6.7 反爬蟲處理 213 6.7.1 爬蟲的危害 213 6.7.2 識別一個爬蟲 213 6.7.3 針對爬蟲的處理 214 6.8 總結 216 6.9 引用資源 216 第7章 測試與調試 217 7.1 單元測試 218 7.1.1 使用Assert模塊 218 7.1.2 Jasmine 219 7.1.3 Ava.js——面向未來 224 7.2 測試現有代碼 227 7.3 更高維度的測試 228 7.3.1 基準測試 228 7.3.2 集成測試 229 7.3.3 持續集成 229 7.4 調試Node應用 231 7.4.1 語言和IDE 232 7.4.2 使用node-inspector 233 7.4.3 使用v8-inspector 234 7.4.4 使用IDE進行調試 236 7.4.5 cpu profiling 237 7.5 總結 239 7.6 引用資源 239 第8章 Node中的錯誤處理 240 8.1 Error模塊 241 8.2 錯誤處理的幾種方式 241 8.3 被拋棄的Domain 243 8.3.1 Domain模塊簡介 243 8.3.2 Domain原理 247 8.3.3 Domain中間件 249 8.3.4 Domain的缺陷 249 8.4 ES6中的錯誤處理 250 8.4.1 Promise 250 8.4.2 Generator 250 8.4.3 async函數 251 8.5 Web服務中的錯誤處理 251 8.5.1 針對每個請求的錯誤處理 251 8.5.2 Express中的錯誤處理 252 8.5.3 Koa中的錯誤處理 252 8.6 防御式編程與Let it crash 253 8.7 總結 256 8.8 引用資源 256 附錄A 進程、線程、協程 257 A.1 從操作系統說起 257 A.2 Node中的協程 258 附錄B Lua語言簡介 259 B.1 Lua中的數據類型 259 B.2 定義一個函數 260 B.3 Lua中的協程 261 附錄C 從零開發一個Node Web框架 263 C.1 框架的雛形 263 C.2 框架的完善 264 C.3 總結 268 附錄D MongoDB和Redis簡介 269 D.1 NoSQL 269 D.2 MongoDB簡介 269 D.3 Redis簡介 271 附錄E 使用Docker來實現虛擬化 274 E.1 Docker的一些常用命令 274 E.2 Redis服務 275 附錄F npm與包管理 277 F.1 package.json常用字段 277 F.2 依賴版本的管理 278
展開全部

新時期的Node.js入門 作者簡介

李鍇,畢業于廈門大學軟件學院,目前就職于花旗集團,從事Web前端開發工作。

商品評論(0條)
暫無評論……
書友推薦
編輯推薦
返回頂部
中圖網
在線客服
主站蜘蛛池模板: 丹佛斯压力传感器,WISE温度传感器,WISE压力开关,丹佛斯温度开关-上海力笙工业设备有限公司 | 经济师考试_2025中级经济师报名时间_报名入口_考试时间_华课网校经济师培训网站 | 单级/双级旋片式真空泵厂家,2xz旋片真空泵-浙江台州求精真空泵有限公司 | 芜湖厨房设备_芜湖商用厨具_芜湖厨具设备-芜湖鑫环厨具有限公司 控显科技 - 工控一体机、工业显示器、工业平板电脑源头厂家 | 电机铸铝配件_汽车压铸铝合金件_发动机压铸件_青岛颖圣赫机械有限公司 | 好物生环保网、环保论坛 - 环保人的学习交流平台 | 地磅-地秤-江阴/无锡地磅-江阴天亿计量设备有限公司_ | 防水套管厂家_刚性防水套管_柔性防水套管_不锈钢防水套管-郑州中泰管道 | 1000帧高速摄像机|工业高速相机厂家|科天健光电技术 | 换网器_自动换网器_液压换网器--郑州海科熔体泵有限公司 | 雷蒙磨,雷蒙磨粉机,雷蒙磨机 - 巩义市大峪沟高峰机械厂 | 真空泵维修保养,普发,阿尔卡特,荏原,卡西亚玛,莱宝,爱德华干式螺杆真空泵维修-东莞比其尔真空机电设备有限公司 | 淄博不锈钢,淄博不锈钢管,淄博不锈钢板-山东振远合金科技有限公司 | 底部填充胶_电子封装胶_芯片封装胶_芯片底部填充胶厂家-东莞汉思新材料 | 黄石东方妇产医院_黄石妇科医院哪家好_黄石无痛人流医院 | 北京晚会活动策划|北京节目录制后期剪辑|北京演播厅出租租赁-北京龙视星光文化传媒有限公司 | 电子厂招聘_工厂招聘_普工招聘_小时工招聘信息平台-众立方招工网 | 液压压力机,液压折弯机,液压剪板机,模锻液压机-鲁南新力机床有限公司 | ASA膜,ASA共挤料,篷布色母料-青岛未来化学有限公司 | 蚂蚁分类信息系统 - PHP同城分类信息系统 - MayiCMS | 一体化污水处理设备,一体化污水设备厂家-宜兴市福源水处理设备有限公司 | 一体化预制泵站-一体化提升泵站-一体化泵站厂家-山东康威环保 | 中药超微粉碎机(中药细胞级微粉碎)-百科 | 高通量组织研磨仪-多样品组织研磨仪-全自动组织研磨仪-研磨者科技(广州)有限公司 | 蒸压釜-陶粒板隔墙板蒸压釜-山东鑫泰鑫智能装备有限公司 | 带式过滤机厂家_价格_型号规格参数-江西核威环保科技有限公司 | ICP备案查询_APP备案查询_小程序备案查询 - 备案巴巴 | 塑胶跑道_学校塑胶跑道_塑胶球场_运动场材料厂家_中国塑胶跑道十大生产厂家_混合型塑胶跑道_透气型塑胶跑道-广东绿晨体育设施有限公司 | 山东PE给水管厂家,山东双壁波纹管,山东钢带增强波纹管,山东PE穿线管,山东PE农田灌溉管,山东MPP电力保护套管-山东德诺塑业有限公司 | 自恢复保险丝_贴片保险丝_力特保险丝_Littelfuse_可恢复保险丝供应商-秦晋电子 | LCD3D打印机|教育|桌面|光固化|FDM3D打印机|3D打印设备-广州造维科技有限公司 | 防堵吹扫装置-防堵风压测量装置-电动操作显示器-兴洲仪器 | 药品仓库用除湿机-变电站用防爆空调-油漆房用防爆空调-杭州特奥环保科技有限公司 | 二手电脑回收_二手打印机回收_二手复印机回_硒鼓墨盒回收-广州益美二手电脑回收公司 | 蜜蜂职场文库_职场求职面试实用的范文资料大全 | CNC机加工-数控加工-精密零件加工-ISO认证厂家-鑫创盟 | 东莞螺丝|东莞螺丝厂|东莞不锈钢螺丝|东莞组合螺丝|东莞精密螺丝厂家-东莞利浩五金专业紧固件厂家 | 郑州宣传片拍摄-TVC广告片拍摄-微电影短视频制作-河南优柿文化传媒有限公司 | 土壤有机碳消解器-石油|表层油类分析采水器-青岛溯源环保设备有限公司 | 武汉高低温试验机-现货恒温恒湿试验箱-高低温湿热交变箱价格-湖北高天试验设备 | 老城街小面官网_正宗重庆小面加盟技术培训_特色面馆加盟|牛肉拉面|招商加盟代理费用多少钱 |