第一部分 起步
第1章 初识WebAssembly
1.1 WebAssembly是什么
1.1.1 WebAssembly的先驱:asm.js
1.1.2 从asm.js到MVP
1.2 WebAssembly解决了哪些问题
1.2.1 性能改进
1.2.2 比JavaScript更快的启动速度
1.2.3 可以在浏览器中使用JavaScript之外的语言
1.2.4 代码复用的机会
1.3 WebAssembly的工作原理
1.3.1 编译器工作原理概览
1.3.2 模块的加载、编译和实例化
1.4 WebAssembly模块的结构
1.4.1 前导
1.4.2 已知段
1.4.3 自定义段
1.5 WebAssembly文本格式
1.6 WebAssembly如何获得安全性
1.7 哪些语言可用来创建WebAssembly模块
1.8 我的模块可以用在何处
1.9 小结
第2章 初探WebAssembly模块内部
2.1 已知段
2.2 自定义段
2.3 小结
第3章 创建自己的第一个WebAssembly模块
3.1 Emscripten工具包
3.2 WebAssembly模块
3.3 Emscripten输出选项
3.4 用Emscripten编译C/C++并使用HTML模板
3.5 让Emscripten生成JavaScript plumbing代码
3.5.1 用Emscripten生成的JavaScript编译C/C++
3.5.2 创建一个供浏览器使用的基本HTML网页
3.6 让Emscripten只生成WebAssembly文件
3.6.1 用Emscripten将C/C++编译为副模块
3.6.2 浏览器中的加载与实例化
3.7 功能检测:如何测试WebAssembly是否可用
3.8 现实用例
3.9 练习
3.10 小结
第二部分 使用模块
第4章 复用现有C++代码库
4.1 用C/C++创建带Emscripten plumbing的模块
4.1.1 修改C++代码
……
第三部分 高级主题
第四部分 调试与测试
附录A 安装与工具设置
附录B cca11、cwrap以及直接函数调用
附录C Emscripten宏
附录D 练习答案
附录E 文本格式进阶
展开