Node.js实战(第2版)
新华书店全新正版,极速发货,假一罚十,可开电子发票,请放心购买。
¥
54.48
6.1折
¥
89
全新
库存5件
作者(英)亚历克斯·杨(Alex Young) 等
出版社人民邮电出版社
ISBN9787115487308
出版时间2018-08
装帧平装
开本16开
定价89元
货号1201745320
上书时间2024-10-19
商品详情
- 品相描述:全新
- 商品描述
-
作者简介
亚历克斯·杨(Alex Young),经验丰富的Webkai发者,广受欢迎的JavaScript社区DailyJS创始人。目前任职于Apple。另著有《Node.js硬实战》。
布拉德利·马克(Bradley Meck),TC39和Node.js基金会成员。业余时间醉心于为JavaScript制作工具、园艺和指导学生。
麦克·坎特伦(Mike Cantelon),Node.js核心框架贡献者,Node社区活跃分子,培训师和演讲人。
蒂姆·奥克斯利(Tim Oxley),JavaScript(Node.js/React)自由撰稿人。
马克·哈特(Marc Harter),Node.js核心框架贡献者。
T.J.霍洛瓦丘(T.J.Holowaychuk),参与开发了很多Node.js模块,包括流行的Express框架。
内森·拉伊利赫(Nathan Rajlich),大名鼎鼎的TooTallNate,Node.js核心代码提交者。
目录
部分Node基础知识介绍
章欢迎进入Node.js的世界2
1.1一个典型的NodeWeb应用程序2
1.1.1非阻塞I/O3
1.1.2事件轮询4
1.2ES2015、Node和V85
1.2.1Node与V87
1.2.2使用特性组8
1.2.3了解Node的发布计划8
1.3安装Node8
1.4Node自带的工具9
1.4.1npm9
1.4.2核心模块10
1.4.3调试器11
1.5三种主流的Node程序12
1.5.1Web应用程序12
1.5.2命令行工具和后台程序13
1.5.3桌面程序14
1.5.4适合Node的应用程序14
1.6总结15
第2章Node编程基础16
2.1Node功能的组织及重用16
2.2开始一个新的Node项目18
2.3用module.exports微调模块的创建20
2.4用node_modules重用模块22
2.5注意事项23
2.6使用异步编程技术24
2.7用回调处理一次性事件25
2.8用事件发射器处理重复性事件28
2.8.1事件发射器示例28
2.8.2响应只应该发生一次的事件29
2.8.3创建事件发射器:一个PUB/SUB的例子29
2.8.4扩展事件监听器:文件监视器32
2.9异步开发的难题34
2.10异步逻辑的顺序化35
2.11何时使用串行流程控制36
2.12实现串行化流程控制37
2.13实现并行化流程控制39
2.14利用社区里的工具41
2.15总结43
第3章NodeWeb程序是什么44
3.1了解NodeWeb程序的结构45
3.1.1开始一个新的Web程序45
3.1.2跟其他平台比一比47
3.1.3然后呢47
3.2搭建一个RESTfulWeb服务47
3.3添加数据库50
3.3.1制作自己的模型API51
3.3.2让文章可读并把它存起来53
3.4添加用户界面54
3.4.1支持多种格式54
3.4.2渲染模板55
3.4.3用npm管理客户端依赖项56
3.5总结57
第二部分Node的Web开发
第4章前端构建系统60
4.1了解基于Node的前端开发60
4.2用npm运行脚本61
4.2.1创建定制的npm脚本62
4.2.2配置前端构建工具63
4.3用Gulp实现自动化63
4.3.1把Gulp添加到项目中64
4.3.2Gulp任务的创建及运行64
4.3.3监测变化66
4.3.4在大项目中把任务分散到不同文件中66
4.4用Webpack构建Web程序67
4.4.1使用打包器和插件67
4.4.2配置和运行Webpack68
4.4.3用Webpack开发服务器68
4.4.4加载CommonJS模块和静态资源70
4.5总结71
第5章服务器端框架72
5.1用户画像72
5.1.1菲尔:代理kai发者73
5.1.2纳迪娜:开源kai发者73
5.1.3爱丽丝:产品kai发者73
5.2框架是什么74
5.3Koa74
5.3.1设置76
5.3.2定义路由76
5.3.3RESTAPI77
5.3.4优点77
5.3.5弱点77
5.4Kraken77
5.4.1设置77
5.4.2定义路由78
5.4.3RESTAPI79
5.4.4优点79
5.4.5弱点79
5.5hapi79
5.5.1设置80
5.5.2定义路由80
5.5.3插件81
5.5.4RESTAPI82
5.5.5优点83
5.5.6弱点83
5.6Sails.js83
5.6.1设置83
5.6.2定义路由84
5.6.3RESTAPI84
5.6.4优点85
5.6.5弱点85
5.7DerbyJS85
5.7.1设置85
5.7.2定义路由86
5.7.3RESTAPI87
5.7.4优点87
5.7.5弱点87
5.8Flatiron.js87
5.8.1设置88
5.8.2定义路由88
5.8.3RESTAPI89
5.8.4优点90
5.8.5弱点90
5.9LoopBack90
5.9.1设置91
5.9.2定义路由92
5.9.3RESTAPI92
5.9.4优点93
5.9.5弱点93
5.10比较93
5.11编写模块化代码95
5.12用户选择95
5.13总结95
第6章深入了解Connect和Express96
6.1Connect96
6.1.1创建Connect程序97
6.1.2了解Connect中间件的工作机制97
6.1.3组合中间件98
6.1.4中间件的顺序98
6.1.5创建可配置的中间件99
6.1.6使用错误处理中间件101
6.2Express103
6.2.1生成程序框架103
6.2.2Express和程序的配置107
6.2.3渲染视图109
6.2.4Express路由入门113
6.2.5用户认证120
6.2.6注册新用户124
6.2.7已注册用户登录130
6.2.8用户加载中间件133
6.2.9创建RESTAPI134
6.2.10启用内容协商140
6.3总结142
第7章Web程序的模板143
7.1用模板保持代码的整洁性143
7.2EmbeddedJavaScript的模板147
7.2.1创建模板148
7.2.2将EJS集成到你的程序中149
7.2.3在客户端程序中使用EJS150
7.3使用Mustache模板语言与Hogan151
7.3.1创建模板151
7.3.2Mustache标签151
7.3.3微调Hogan154
7.4用Pug做模板154
7.4.1Pug基础知识155
7.4.2Pug模板中的逻辑157
7.4.3组织Pug模板159
7.5总结163
第8章存储数据164
8.1关系型数据库164
8.2PostgreSQL164
8.2.1安装及配置164
8.2.2创建数据库165
8.2.3从Node中连接Postgres165
8.2.4定义表166
8.2.5插入数据166
8.2.6更新数据166
8.2.7查询数据167
8.3Knex167
8.3.1查询构建器168
8.3.2用Knex实现连接和查询168
8.3.3切换数据库170
8.3.4注意抽象漏洞171
8.4MySQL和PostgreSQL171
8.5ACID保证172
8.5.1原子性:无论成败,事务必须整体执行172
8.5.2一致性:始终确保约束条件172
8.5.3隔离性:并发事务不会相互干扰172
8.5.4耐用性:事务是永久性的173
8.6NoSQL173
8.7分布式数据库173
8.8MongoDB174
8.8.1安装和配置174
8.8.2连接MongoDB174
8.8.3插入文档175
8.8.4查询176
8.8.5使用MongoDB标识177
8.8.6使用复制集178
8.8.7了解写关注180
8.9键/值存储181
8.10Redis181
8.10.1安装和配置182
8.10.2初始化182
8.10.3处理键/值对183
8.10.4处理键184
8.10.5编码与数据类型184
8.10.6使用散列表186
8.10.7使用列表186
8.10.8使用集合187
8.10.9用频道实现发布/订阅功能188
8.10.10提升性能189
8.11嵌入式数据库189
8.12LevelDB190
8.12.1LevelUP与LevelDOWN190
8.12.2安装191
8.12.3API概览191
8.12.4初始化191
8.12.5键/值编码192
8.12.6键/值对的读写192
8.12.7可插拔的后台193
8.12.8模块化数据库194
8.13昂贵的序列化和反序列化195
8.14浏览器内存储196
8.14.1Web存储:localStorage和sessionStorage196
8.14.2值的读写197
8.14.3localForage199
8.14.4读和写199
8.15存储托管200
8.16选哪个数据库201
8.17总结201
第9章测试Node程序202
9.1单元测试203
9.1.1assert模块203
9.1.2Mocha206
9.1.3Vows211
9.1.4Chai213
9.1.5Should.js214
9.1.6Sinon.JS的探测器和存根216
9.2功能测试218
9.3处理失败的测试221
9.3.1获取更详细的日志221
9.3.2更好的栈跟踪223
9.4总结224
0章Node程序的部署及运维225
10.1安置Node程序225
10.1.1平台即服务226
10.1.2服务器227
10.1.3容器228
10.2部署的基础知识229
10.2.1从Git库部署229
10.2.2保证Node不掉线230
10.3在线时长和性能的zui大化231
10.3.1用Upstart保证在线时长232
10.3.2集群API:充分利用多核处理器233
10.3.3静态文件及代理235
10.4总结236
第三部分超越Web开发
1章编写命令行程序238
11.1了解惯例和理念238
11.2parse-json239
11.3使用命令行参数239
11.3.1解析命令行参数239
11.3.2验证参数240
11.3.3将stdin作为文件传递241
11.4用npm分享命令行工具242
11.5用管道连接脚本243
11.5.1将数据通过管道传给parse-json243
11.5.2处理错误和退出码243
11.5.3在Node中使用管道245
11.5.4管道与命令的执行顺序246
11.6解释真正的脚本247
11.7总结247
2章用Electron征服桌面248
12.1认识Electron248
12.1.1Electron的技术栈249
12.1.2界面设计250
12.2创建一个Electron程序250
12.3搭建完整的桌面端程序252
12.3.1引导React与Babel253
12.3.2安装依赖项253
12.3.3设置Webpack254
12.4React程序255
12.4.1定义Request组件256
12.4.2定义Response组件258
12.4.3React组件之间的通信261
12.5构建与分发261
12.5.1用Electron打包器构建程序261
12.5.2打包262
12.6总结263
附录A安装Node264
附录B自动化的网络抓取267
附录CConnect的官方中间件277
术语表307
内容摘要
本书是Node.js的实战教程,涵盖了为开发产品级Node应用程序所需要的一切特性、技巧以及相关理念。 从搭建Node开发环境,到一些简单的演示程序,到开发复杂应用程序所必不可少的异步编程。第二版介绍了全栈开发者所需的全部技术,包括前端构建系统、选择Web框架、在Node中与数据库的交互、编写测试和部署Web程序,等等。
— 没有更多了 —
以下为对购买帮助不大的评价