首页  软件  游戏  图书  电影  电视剧

请输入您要查询的图书:

 

图书 Node.js(来一打C++扩展)
内容
内容推荐
本书讲解了如何在 Node.js 上写 C++ 的原生模块以供使用,包括且不有且只有于一些 API 和原理的介绍,但是不包括 Node.js 的基础入门知识(如语法等)。目标是读者能用 C++ 写出 Node.js 原生模块来提高开发和运行效率。
目录
1 Node.js 的 C++ 扩展前驱知识储备 / 1
1.1 Node.js 的模块机制 / 2
1.1.1 CommonJS 的模块规范 / 2
1.1.2 Node.js 的模块 / 4
1.1.3 小结 / 9
1.1.4 参考资料 / 9
1.2 Node.js 的包机制 / 9
1.2.1 CommonJS 的包规范 / 9
1.2.2 Node.js / NPM 下的包 / 13
1.2.3 NPM 与 CNPM / 16
1.2.4 小结 / 19
1.2.5 参考资料 / 19
1.3 Node.js 依赖简介 / 20
1.3.1 Chrome V8 / 20
1.3.2 libuv / 25
1.3.3 其他依赖 / 28
1.3.4 小结 / 30
1.3.5 参考资料 / 30
1.4 C++ 扩展开发的准备工作 / 31
1.4.1 编辑器 / IDE / 31
1.4.2 node-gyp / 36
1.4.3 其他构建工具 / 54
1.4.4 小结 / 56
1.4.5 参考资料 / 56
2 C++ 模块原理简析 / 57
2.1 为什么要写 C++ 模块 / 57
2.1.1 C++ 比 JavaScript 解释器高效 / 57
2.1.2 已有的 C++ 轮子 / 72
2.1.3 小结 / 77
2.1.4 参考资料 / 77
2.2 什么是 C++ 扩展 / 78
2.2.1 C++ 模块本质 / 80
2.2.3 小结 / 102
2.2.4 参考资料 / 103
3 Chrome V8 基础 / 104
3.1 Node.js 与 Chrome V8 / 104
3.2 基本概念 / 105
3.2.1 内存机制 / 105
3.2.2 隔离实例(Isolate) / 108
3.2.3 上下文(Context) / 109
3.2.4 脚本(Script) / 110
3.2.5 小结 / 110
3.2.6 参考资料 / 111
3.3 句柄(Handle / 111
3.3.1 本地句柄(Local) / 112
3.3.2 持久句柄(Persistent) / 115
3.3.3 永生句柄(Eternal) / 119
3.3.4 待实本地句柄(Maybe Local) / 119
3.3.5 小结 / 121
3.3.6 参考资料 / 121
3.4 句柄作用域 / 121
3.4.1 一般句柄作用域(Handle Scope) / 122
3.4.2 可逃句柄作用域(Escapable Handle Scope) / 125
3.4.3 小结 / 129
3.4.4 参考资料 / 129
3.5 上下文(Context) / 129
3.6 模板(Template) / 133
3.6.1 函数模板(Function Template) / 133
3.6.2 对象模板(Object Template) / 138
3.6.3 对象模板的访问器(Accessor)与拦截器(Interceptor) / 144
3.6.4 对象模板的内置字段(Internal Field) / 175
3.6.5 函数模板的继承(Inherit) / 183
3.6.6 小结 / 188
3.6.7 参考资料 / 189
3.7 常用数据类型 / 189
3.7.1 基值(Value) / 189
3.7.2 字符串(String) / 194
3.7.3 数值类型 / 196
3.7.4 布尔类型(Boolean) / 196
3.7.5 对象(Object) / 196
3.7.6 函数(Function) / 200
3.7.7 数组(Array) / 202
3.7.8 JSON 解析器 / 203
3.7.9 函数回调信息(Function Callback Info) / 203
3.7.10 函数返回值(Return Value) / 204
3.7.11 隔离实例(Isolate) / 204
3.7.12 小结 / 205
3.7.13 参考资料 / 206
3.8 异常机制. / 206
3.8.1 try-catch / 206
3.8.2 抛出异常 / 209
3.8.3 异常生成类(Exception) / 211
3.8.4 小结 / 211
3.8.5 参考资料 / 211
4 C++ 扩展实战初探 / 212
4.1 binding.gyp / 212
4.1.1 惊鸿一瞥 / 213
4.1.2 binding.gyp 基础结构 / 213
4.1.3 GYP 文件 / 214
4.1.4 常用字段 / 221
4.1.5 小结 / 228
4.1.6 参考资料 / 228
4.2 牛刀小试. / 229
4.2.1 又是 Hello World / 229
4.2.2 函数参数 / 232
4.2.3 回调函数 / 234
4.2.4 函数返回 / 238
4.2.5 小结 / 239
4.2.6 参考资料 / 240
4.3 循序渐进 / 240
4.3.1 C++ 与 JavaScript 类封装 / 240
4.3.2 实例化 C++ 类封装对象的函数 / 250
4.3.3 将 C++ 类封装对象传来传去 / 253
4.3.4 进程退出钩子 / 255
4.3.5 小结 / 259
4.3.6 参考资料 / 259
5 Node.js 原生抽象——NAN / 260
5.1 Node.js 原生模块开发方式的变迁 / 260
5.1.1 以不变应万变 / 260
5.1.2 时代在召唤 / 261
5.1.3 小结 / 267
5.1.4 参考资料 / 267
5.2 基础开发 / 267
5.2.1 什么是 NAN / 267
5.2.2 安装和配置 / 269
5.2.3 先睹为快——搭上NAN 的快车 / 270
5.2.4 基础帮助函数和宏 / 276
5.2.5 忽略 node_modules / 279
5.2.6 小结 / 279
5.2.7 参考资料 / 280
XXII Node.js:来一打C++ 扩展
5.3 JavaScript 函数 / 280
5.3.1 函数参数类型 / 280
5.3.2 函数声明 / 282
5.3.3 函数设置 / 288
5.3.4 小结 / 296
5.3.5 参考资料 / 296
5.4 常用帮助类与函数. / 296
5.4.1 句柄相关 / 296
5.4.2 创建数据对象 / 298
5.4.3 与数据对象“玩耍” / 300
5.4.4 封装一个类 / 314
5.4.5 异常处理 / 315
5.4.6 小结 / 315
5.4.7 参考资料 / 316
5.5 NAN 中的异步机制 / 316
5.5.1 Nan::AsyncQueueWorker / 316
5.5.2 Nan::Callback / 317
5.5.3 Nan::AsyncWorker / 317
5.5.4 Nan::AsyncProgressWorker / 323
5.5.5 小结 / 327
5.5.6 参考资料 . / 327
6 异步之旅——libuv / 328
6.1 基础概念 / 329
6.1.1 事件循环 / 330
6.1.2 句柄(Handle)与请求(Request) / 333
6.1.3 尝尝甜头 / 335
6.1.4 小结 / 340
6.1.5 参考资料 / 340
6.2 libuv 的跨线程编程基础 / 341
6.2.1 libuv 的线程 / 342
6.2.2 同步原语(Synchronization Primitive) / 347
6.2.3 工作队列 / 355
6.2.4 小结 / 356
6.2.5 参考资料 / 357
6.3 跨线程通信 / 357
6.3.1 uv_async_t 句柄 / 357
6.3.2 Watchdog 半成品实战解析 / 358
6.3.3 Watchdog 试运行 / 367
6.3.4 小结 / 368
6.3.5 参考资料 / 369
7 实战——文件监视器. / 370
7.1 准备工作 / 370
7.1.1 功能规划 / 370
7.1.2 文件系统监听库——efsw / 373
7.1.3 小结 / 376
7.1.4 参考资料 / 376
7.2 核心设计 / 376
7.2.1 API 设计 . / 377
7.2.2 EFSWCore 的血肉之躯 / 377
7.2.3 EFSWCore 的灵魂 / 381
7.2.4 小结 / 385
7.3 编写JavaScript 类 / 386
7.3.1 类的设计 / 386
7.3.2 核心逻辑 / 388
7.3.3 简单容错 / 391
7.3.4 小结 / 393
7.4 进一步完善 / 393
7.4.1 C++ 代码的完善 / 393
7.4.2 JavaScript 代码的完善 / 398
7.4.3 小结 / 400
8 实战——现有包剖析 / 401
8.1 字符串哈希模块——Bling Hashes / 401
8.1.1 文件设定 / 402
8.1.2 C++ 源码剖析 / 403
8.1.3 JavaScript 源码剖析 / 408
8.1.4 小结 / 409
8.1.5 参考资料 / 410
标签
缩略图
书名 Node.js(来一打C++扩展)
副书名
原作名
作者 死月
译者
编者
绘者
出版社 电子工业出版社
商品编码(ISBN) 9787121336423
开本 16开
页数 455
版次 1
装订 平装
字数 655
出版时间 2018-06
首版时间 2018-06
印刷时间 2018-06
正文语种
读者对象 普通大众
适用范围
发行范围 公开发行
发行模式 实体书
首发网站
连载网址
图书大类
图书小类
重量 852
CIP核字 2018022884
中图分类号 TP312.8
丛书名
印张 30
印次 1
出版地 北京
234
183
24
整理
媒质 图书
用纸 普通纸
是否注音
影印版本 原版
出版商国别 CN
是否套装
著作权合同登记号
版权提供者
定价 109.00
印数
出品方
作品荣誉
主角
配角
其他角色
一句话简介
立意
作品视角
所属系列
文章进度
内容简介
作者简介
目录
文摘
安全警示 适度休息有益身心健康,请勿长期沉迷于阅读小说。
随便看

 

兰台网图书档案馆全面收录古今中外各种图书,详细介绍图书的基本信息及目录、摘要等图书资料。

 

Copyright © 2004-2025 xlantai.com All Rights Reserved
更新时间:2025/5/7 0:46:48