使用ffi模块调用动态链接库(Windows)
购买本课程后,可以加51CTO学堂李宁老师官方交流群:550369460 注意,该群只允许购买李宁老师课程的学员进行技术交流,加群时需要提供在51CTO购买李宁老师课程的订单编号(任何一个课程的订单编号即可)。
本课程属于《Node.js开发实战》系列课程,多面深入讲解了如何开发Node.js和Electron本地模块(使用C++和Go语言),以及深入探讨Node.js本地模块的细节。
PS:尽管Electron是基于Node.js的,但由于Electron和Node.js使用了不同版本的V8引擎,所以为Node.js开发的本地模块并不能之间用于Electron中,反之亦然。不过源代码可以通用,只是需要为Electron和Node.js单独编译各自的本地模块,编译的方法略有不同。本课程会详细介绍Node.js和Electron本地模块的编译方式。
那么为什么要开发本地模块呢?理由至少有如下3个:
1. 保护敏感代码(因为JavaScript代码都是开源的,但C++和Go编译后的目标程序是二进制形式的)
2. 提升性能(JS代码的运行效率总体上不如C++和Go编译后的二进制文件的运行效率)
3. 集成第三方程序库(很多有实用价值的程序库都不是用js写的,通过本地模块可以将这些程序库基础到node.js和electron应用中。
51CTO学堂推荐视频课程
51CTO学堂推荐专题
公开笔记对他人可见,有机会被管理员评为“优质笔记”
{{ noteEditor.content.length }}/2000
讲师收到你的提问会尽快为你解答。若选择公开提问,可以获得更多学员的帮助。
课程大纲
![【李宁】Node.js 7.x视频课程(1):Node.js入门](https://s2.51cto.com/images/202110/28/168273285e77f5fa3f56b6a260bcc3d5.png?x-oss-process=image)
![Electron实战(1):基础知识视频教程](https://s2.51cto.com/images/201809/12/e062b8b4f74c07f33be8a88aa9800916.png?x-oss-process=image)
![Electron实战(2):窗口与对话框视频课程](https://s2.51cto.com/images/201809/26/dbe48118ea6cf9b65a70a0c741feb846.png?x-oss-process=image)
![项目实战:高仿美团网视频课程(Vue2+Node.js+支付)](https://s2.51cto.com/images/201907/03/741bf3f1c253b691ba324e1b6386e478.jpg?x-oss-process=image)
![【李宁】Node.js 7.x视频课程(8):HTTP服务端和客户端技术](https://s2.51cto.com/images/202110/28/3140b3b0318c8e7b294f78e0f3abc1f3.png?x-oss-process=image)
![【李宁】Node.js 7.x视频课程(3):基础知识](https://s2.51cto.com/images/202110/28/97a3abee23b9de4d1d13dd09bed85995.png?x-oss-process=image)
![【李宁】Node.js 7.x视频课程(10):Socket通信视频课程](https://s2.51cto.com/images/202110/28/cbd37dfac3487a6fcf9c5639c589e95a.png?x-oss-process=image)
![Electron实战(4):API视频课程](https://s2.51cto.com/images/202007/15/336cac43c5d5f16303fc7e9d73edf00b.png?x-oss-process=image)