- 开发者引导
- 理解 JS API
- 高级工具
- JavaScript API
- FAQ 常见问题
- 最小可行性版本
- Features to add after the MVP
- Modules
- 语义
- Binary Encoding
- Web Embedding
- Text Format
- Design Rationale
- Security
- Nondeterminism in WebAssembly
- Guide for C/C++ developers
- Feature Test
- Tooling support
- GC / DOM / Web API Integration :unicorn:
- JIT and Optimization Library
- Dynamic linking
- WebAssembly 的长久目标
- 非网络嵌入
- 可移植性
- 使用场景
文章来源于网络收集而来,版权归原创者所有,如有侵权请及时联系!
WebAssembly 的长久目标
- 定义一个可移植、体积小、加载快的二进制格式作为编译结果。通过充分发挥通用硬件的能力(包括移动设备以及物联网),使其在大多数平台上能达到原生的执行效率。
- 逐步制定与完善:
- 主要针对 C/C++,提供一个和 asm.js 有大致相同功能的该标准最小可行性产品(MVP);
- 其他特性,首先关注在线程、零成本异常处理和单指令流多数据流等关键功能特性上,然后优先考虑通过反馈和经验总结的其他特性,比如对非 C/C++ 编程语言的支持。
- 被设计为可以与现有的 Web 平台完美结合并在其中运行:
- 维护无版本、特性可测试、向后兼容的 Web 演变过程;
- 和 JavaScript 执行在相同的语意环境中;
- 允许和 JavaScript 相互的同步调用;
- 严格遵守同源策略以及浏览器安全策略;
- 和 JavaScript 一样,可以访问相同的 Web API 去调用浏览器的功能;以及
- 定义一个可与二进制格式相互转化的人类可编辑的文本格式,并且支持查看源码的功能。
- 被设计为也可以支持非浏览器嵌入的运行形式。
- 创造一个伟大的平台:
- 为 WebAssembly 构建一个新的 LLVM 后端环境和伴随的 Clang 端口(为什么首选 LLVM?);
- 推广面向 WebAssembly 的其他编译器和工具;以及
- 启用其他有用的工具。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论