图书介绍
Node.js 来一打C++扩展【2025|PDF|Epub|mobi|kindle电子书版本百度云盘下载】

- 死月著 著
- 出版社: 北京:电子工业出版社
- ISBN:9787121336423
- 出版时间:2018
- 标注页数:456页
- 文件大小:49MB
- 文件页数:482页
- 主题词:C++语言-程序设计
PDF下载
下载说明
Node.js 来一打C++扩展PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
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与CNPM16
1.2.4 小结19
1.2.5 参考资料19
1.3 Node.js依赖简介20
1.3.1 Chrome V820
1.3.2 libuv25
1.3.3 其他依赖28
1.3.4 小结30
1.3.5 参考资料30
1.4 C++扩展开发的准备工作31
1.4.1 编辑器/IDE31
1.4.2 node-gyp36
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++模块本质78
2.2.2 Node js模块加载原理80
2.2.3 小结102
2.2.4 参考资料103
3 Chrome V8基础104
3.1 Node j s与Chrome V8104
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-catch206
3.8.2 抛出异常209
3.8.3 异常生成类(Exception)211
3.8.4 小结211
3.8.5 参考资料211
4 C++扩展实战初探212
4.1 binding.gyp212
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 World229
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原生抽象——NAN260
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 什么是NAN267
5.2.2 安装和配置269
5.2.3 先睹为快——搭上NAN的快车270
5.2.4 基础帮助函数和宏276
5.2.5 忽略node_modules279
5.2.6 小结279
5.2.7 参考资料280
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::AsyncQueueWorker316
5.5.2 Nan::Callback317
5.5.3 Nan::AsyncWorker317
5.5.4 Nan::AsyncProgressWorker323
5.5.5 小结327
5.5.6 参考资料327
6 异步之旅——libuv328
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 文件系统监听库——efsw373
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 Hashes401
8.1.1 文件设定402
8.1.2 C++源码剖析403
8.1.3 JavaScript 源码剖析408
8.1.4 小结409
8.1.5 参考资料410
8.2 类Proxy包——Auto Object410
8.2.1 Proxy410
8.2.2 Auto Object使用范例412
8.2.3 代码剖析415
8.2.4 小结424
8.2.5 参考资料424
9 N-API——下一代Node.js C++扩展开发方式425
9.1 浅尝辄止426
9.1.1 实现一个Echo函数426
9.1.2 尝试运行N-API扩展430
9.1.3 向下兼容431
9.1.4 N-API Package——C++封装433
9.1.5 小结433
9.1.6 参考资料433
9.2 基本数据类型与错误处理433
9.2.1 基本数据类型433
9.2.2 与作用域及生命周期相关的数据类型435
9.2.3 回调数据类型438
9.2.4 错误处理439
9.2.5 模块注册441
9.2.6 小结442
9.2.7 参考资料442
9.3 对象与函数442
9.3.1 对象442
9.3.2 函数448
9.3.3 类的封装453
9.3.4 小结455
9.3.5 参考资料455
热门推荐
- 2215173.html
- 1811720.html
- 3245629.html
- 2560234.html
- 2350269.html
- 1715875.html
- 1225390.html
- 277931.html
- 1598980.html
- 3772720.html
- http://www.ickdjs.cc/book_659310.html
- http://www.ickdjs.cc/book_888019.html
- http://www.ickdjs.cc/book_2153039.html
- http://www.ickdjs.cc/book_1713917.html
- http://www.ickdjs.cc/book_2933320.html
- http://www.ickdjs.cc/book_2747395.html
- http://www.ickdjs.cc/book_2458469.html
- http://www.ickdjs.cc/book_2913924.html
- http://www.ickdjs.cc/book_266706.html
- http://www.ickdjs.cc/book_3658578.html