《Node.js入门经典》PDF下载

  • 购买积分:12 如何计算积分?
  • 作  者:(英)奥尔波著
  • 出 版 社:北京:人民邮电出版社
  • 出版年份:2013
  • ISBN:9787115311078
  • 页数:338 页
图书介绍:Node.js是一个用于构建服务器端JavaScript应用的框架。在本书中,读者可以掌握配置node.js,构建基本的站点,使用node.js的实时功能开发中高级站点,访问第三方API并编写node.js模块,以及调试、测试和部署应用等知识。

第1部分 入门 2

第1章 Node.js介绍 2

1.1什么是Node.js 2

1.2使用Node.js能做什么 3

1.3安装并创建第一个Node.js程序 3

1.3.1验证Node.js正确安装 4

1.3.2创建“Hello World”Node.js程序 4

1.4小结 5

1.5问与答 6

1.6测验 6

1.6.1问题 6

1.6.2答案 7

1.7练习 7

第2章 npm(Node包管理器) 8

2.1 npm是什么 8

2.2安装npm 9

2.3安装模块 9

2.4使用模块 10

2.5如何找模块 11

2.5.1官方来源 11

2.5.2非官方来源 12

2.6本地和全局的安装 13

2.6.1本地安装 13

2.6.2全局安装 13

2.7如何找模块文档 14

2.8使用package.json指定依赖关系(dependency) 14

2.9小结 16

2.10问与答 16

2.11测验 16

2.11.1问题 16

2.11.2答案 17

2.12练习 17

第3章 Node.js的作用 18

3.1设计Node.js的目的 18

3.2理解I/O 19

3.3处理输入 19

3.4联网的I/O是不可预测的 22

3.5人类是不可预测的 24

3.6处理不可预测性 25

3.7小结 26

3.8问与答 26

3.9测验 27

3.9.1问题 27

3.9.2答案 27

3.10练习 27

第4章 回调(Callback) 29

4.1什么是回调 29

4.2剖析回调 33

4.3 Node.js如何使用回调 34

4.4同步和异步代码 36

4.5事件循环 39

4.6小结 39

4.7问与答 39

4.8测验 40

4.8.1问题 40

4.8.2答案 40

4.9练习 40

第2部分 使用Node&js的基本网站 44

第5章 HTTP 44

5.1什么是HTTP 44

5.2使用Node.js的HTTP服务器 44

5.2.1一个基础的服务器 44

5.2.2加入头(Header) 45

5.2.3检查响应头 46

5.2.4 Node.js中的重定向 49

5.2.5响应不同的请求 50

5.3使用Node.js的HTTP客户端 52

5.4小结 53

5.5问与答 53

5.6测验 54

5.6.1问题 54

5.6.2答案 54

5.7练习 54

第6章 Express介绍 55

6.1什么是Express 55

6.2为什么使用Express 55

6.3安装Express 56

6.4创建一个基础的Express站点 56

6.5探索Express 58

6.5.1 app.js 58

6.5.2 node modules 58

6.5.3 package.json 58

6.5.4 public 58

6.5.5 routes 58

6.5.6 views 58

6.6介绍Jade 59

6.6.1使用Jade定义页面结构 60

6.6.2使用Jade输出数据 62

6.7小结 68

6.8问与答 68

6.9测验 68

6.9.1问题 69

6.9.2答案 69

6.10练习 69

第7章 深入Express 70

7.1 Web应用程序中的路由 70

7.2在Express中路由如何工作 70

7.3添加GET路由 71

7.4添加POST路由 72

7.5在路由中使用参数 73

7.6让路由保持可维护性 74

7.7视图渲染 75

7.8使用本地变量 76

7.9小结 78

7.10问与答 78

7.11测验 78

7.11.1问题 79

7.11.2答案 79

7.12练习 79

第8章 数据的持久化 80

8.1什么是持久的数据 80

8.2将数据写入文件 81

8.3从文件读取数据 82

8.4读取环境变量 83

8.5使用数据库 84

8.5.1关系数据库 84

8.5.2 NoSQL数据库 85

8.6在Node.js中使用MongoDB 85

8.6.1安装MongoDB 86

8.6.2连接MongoDB 87

8.6.3定义文档 89

8.6.4将Twitter Bootstrap包含进来 90

8.6.5索引(Index)视图 91

8.6.6创建(Create)视图 93

8.6.7编辑视图 95

8.6.8删除任务 98

8.6.9添加闪出消息 99

8.6.10验证输入的数据 101

8.7小结 102

8.8问与答 103

8.9测验 103

8.9.1问题 103

8.9.2答案 103

8.10练习 104

第3部分 调试、测试与部署 106

第9章 调试Node.js应用程序 106

9.1调试 106

9.2 STDIO模块 107

9.3 Node.js调试器 111

9.4 Node Inspector 113

9.5关于测试的注释 116

9.6小结 116

9.7问与答 116

9.8测验 117

9.8.1问题 117

9.8.2答案 117

9.9练习 117

第10章 测试Node.js应用程序 119

10.1为什么测试 119

10.2 Assert(断言)模块 120

10.3第三方测试工具 122

10.4行为驱动的开发(Behavior Driven Development) 125

10.4.1 Vows 125

10.4.2 Mocha 128

10.5小结 131

10.6问与答 131

10.7测验 132

10.7.1问题 132

10.7.2答案 132

10.8练习 132

第11章 部署Node.js应用程序 133

11.1准备好部署 133

11.2在云上托管 133

11.3 Heroku 135

11.3.1注册Heroku 135

11.3.2为Heroku准备应用程序 136

11.3.3将应用程序部署到Heroku 137

11.4 Cloud Foundry 138

11.4.1注册Cloud Foundry 138

11.4.2为Cloud Foundry准备应用程序 139

11.4.3将应用程序部署到Cloud Found 140

11.5 Nodester 141

11.5.1注册Nodester 141

11.5.2为Nodester准备应用程序 142

11.5.3将应用程序部署到Nodester 143

11.6其他PaaS提供商 144

11.7小结 144

11.8问与答 144

11.9测验 145

11.9.1 测验 145

11.9.2答案 145

11.10练习 145

第4部分 使用Node.js的中间站点 148

第12章 介绍Socket.IO 148

12.1现在要开始学习一些完全不同的技术了 148

12.2动态Web简史 148

12.3 Socket.IO 149

12.4基础的Socket.IO示例 150

12.5从服务器发送数据到客户端 152

12.6将数据广播给客户端 156

12.7双向数据 160

12.8小结 163

12.9问与答 163

12.10测验 164

12.10.1问题 164

12.10.2答案 164

12.11练习 165

第13章 一个Socket.IO聊天服务器 166

13.1 Express和Socket.IO 166

13.2添加昵称 168

13.2.1将昵称发送给服务器 169

13.2.2管理昵称列表 171

13.2.3使用回调来验证 174

13.2.4广播昵称列表 178

13.2.5添加消息收发功能 179

13.3小结 183

13.4问与答 184

13.5测验 184

13.5.1问题 184

13.5.2答案 184

13.6练习 185

第14章 一个流Twitter客户端 186

14.1流API 186

14.2注册Twitter 187

14.3和Nodejs一起使用Twitter的API 189

14.4从数据中挖掘含义 191

14.5将数据推送到浏览器 194

14.6创建一个实时的爱恨表 197

14.7小结 206

14.8问与答 206

14.9测验 206

14.9.1问题 206

14.9.2答案 206

14.10练习 207

第15章JSON API 208

15.1 API 208

15.2 JSON 209

15.3使用Node.js发送JSON数据 211

15.4从JavaScript对象创建JSON 212

15.5使用Node.js消费JSON数据 213

15.6使用Node.js创建JSONAPI 216

15.6.1在Express中以JSON发送数据 216

15.6.2构建应用程序 219

15.7小结 224

15.8问与答 225

15.9测验 225

15.9.1问题 225

15.9.2答案 225

15.10练习 226

第5部分 探索Node.js API 228

第16章 进程模块 228

16.1进程是什么 228

16.2退出进程以及进程中的错误 230

16.3进程与信号 230

16.4向进程发送信号 231

16.5使用Nodejs创建脚本 233

16.6给脚本传递参数 234

16.7小结 236

16.8问与答 236

16.9测验 237

16.9.1问题 237

16.9.2答案 237

16.10练习 238

第17章 子进程模块 239

17.1什么是子进程 239

17.2杀死子进程 241

17.3与子进程通信 242

17.4集群(Cluster)模块 244

17.5小结 246

17.6问与答 246

17.7测验 246

17.7.1问题 246

17.7.2答案 246

17.8 练习 247

第18章 事件模块 248

18.1理解事件 248

18.2通过HTTP演示事件 251

18.3用事件玩乒乓 254

18.4动态编写事件侦听器程序 255

18.5小结 258

18.6问与答 258

18.7测验 259

18.7.1问题 259

18.7.2答案 259

18.8练习 259

第19章 缓冲区模块 260

19.1二进制数据初步 260

19.2从二进制到文本 261

19.3二进制和Node.js 262

19.4 Node.js中的缓冲区是什么? 264

19.5写入缓冲区 265

19.6向缓冲区追加数据 266

19.7复制缓冲区 267

19.8修改缓冲区中的字符串 267

19.9小结 268

19.10问与答 268

19.11测验 268

19.11.1问题 268

19.11.2答案 269

19.12练习 269

第20章 流模块 270

20.1流简介 270

20.2可读流 272

20.3可写流 275

20.4通过管道连接流 276

20.5流的MP3 277

20.6小结 278

20.7问与答 278

20.8测验 279

20.8.1问题 279

20.8.2答案 279

20.9练习 279

第6部分 进一步的Node.js开发 282

第21章CoffeeScript 282

21.1什么是CoffeeScript 282

21.2安装与运行CoffeeScript 284

21.3为什么要使用预编译器 285

21.4 CoffeeScript的功能 286

21.4.1最小语法 286

21.4.2条件和比较 287

21.4.3循环 288

21.4.4字符串 289

21.4.5对象 290

21.4.6类、继承和super 291

21.5调试CoffeeScript 294

21.6对CoffeeScript的反应 294

21.7小结 295

21.8问与答 295

21.9测验 296

21.9.1问题 296

21.9.2答案 296

21.10练习 296

第22章 创建Node.js模块 298

22.1为什么创建模块 298

22.2流行的Node.js模块 298

22.3 package.json文件 299

22.4文件夹结构 301

22.5开发和测试模块 302

22.6添加可执行文件 304

22.7使用面向对象或者基于原型的编程 305

22.8通过GitHub共享代码 306

22.9使用Travis CI 307

22.10发布到npm 309

22.11公开模块 310

22.12小结 310

22.13问与答 310

22.14测验 311

22.14.1问题 311

22.14.2答案 311

22.15 练习 311

第23章 使用Connect创建中间件 312

23.1什么是中间件 312

23.2 Connect中的中间件 313

23.3使用中间件的访问控制 317

23.4按IP地址限制访问 319

23.5将用户强制到单个域上 322

23.6小结 324

23.7问与答 324

23.8测验 324

23.8.1问题 324

23.8.2答案 325

23.9练习 325

第24章 结合使用Backbone.js与Node.js 326

24.1什么是Backbone.js 326

24.2 Backbone.js如何工作 327

24.3一个简单的Backbon.js视图 332

24.4使用Backbone.js创建记录 336

24.5小结 337

24.6问与答 337

24.7测验 338

24.7.1问题 338

24.7.2答案 338

24.8练习 338