如何使用 WebAssembly 和 JS构建高性能应用程序( 三 )
例如 , 如果你无法找到实现某些功能的 JavaScript 库 , 则必须从头开始编写并实现自己的库 。 但如果你可以找到实现相同功能 , 但使用不同语言编写的库 , 则可以使用 WebAssembly 的能力在 Web 应用程序中运行它 。 这是一项重大突破 , 因为从开发人员的角度来看 , 它将节省大量时间 。
Squoosh 应用使用 WebAssembly 来实现其 QR 和图像检测功能 。 这样一来 , 即使在较旧的浏览器上 , 它们也能以接近原生的速度支持这些功能 。 此外 , eBay 将其原生应用程序的 C++ 库编译为 WebAssembly , 从而在 Web 应用程序中实现了条形码扫描功能 。
- 无需修改代码 , 就能在 Web 上运行用 C、C++、Rust 等语言编写的完全原生应用程序 , 性能表现也接近原生水平 。
- 即使你找到了用 JavaScript 编写的类似库 , 也可以使用以 C、C++ 或 Rust 等语言编写的库 , 因为 WebAssembly 代码速度飞快 , 并能提供更好的质量 。
支持的语言WebAssembly 支持不仅限于 C、C++ 和 Rust 。 许多开发人员也在努力纳入对其他语言的支持 。 以下是当前支持的语言列表 。
- C/C++
- Rust
- AssemblyScript(类似 TypeScript 的语法)
- C#
- F#
- Go
- Kotlin
- Swift
- D
- Pascal
- Zig
关于这些问题的更多信息可以参考以下文章 。
大家都对它寄予厚望 , 可以肯定地说 WebAssembly 能够为一系列应用铺平道路 , 惊艳世人 。
“没人能肯定地说这些性能改进可以催生怎样的应用 。 但以史为鉴 , 我们可以对此满怀期待” ——Lin Clark
原文链接:
延伸阅读:
20个大前端必知领域之「WebAssembly」-InfoQ
22个必知编程语言之「WebAssembly」-InfoQ
Next.js 9.5 正式发布:支持 Webpack 5-InfoQ
关注我并转发此篇文章 , 私信我“领取资料” , 即可免费获得InfoQ价值4999元迷你书 , 点击文末「了解更多」 , 即可移步InfoQ官网 , 获取最新资讯~
- 会员|美容院使用会员管理软件给顾客更好的消费体验!
- 页面|如何简单、快速制作流程图?上班族的画图技巧get
- 桌面|日常使用的软件及网站分享 篇一:几个动态壁纸软件和静态壁纸网站:助你美化你的桌面
- 培育|跨境电商人才如何培育,长沙有“谱”了
- 抖音小店|抖音进军电商,短视频的商业模式与变现,创业者该如何抓住机遇?
- 计费|5G是如何计费的?
- QuestMobile|QuestMobile:百度智能小程序月人均使用个数达9.6个
- 车轮旋转|牵引力控制系统是如何工作的?它有什么作用?
- 视频|短视频如何在前3秒吸引用户眼球?
- Vlog|中国Vlog|中国基建如何升级?看5G+智慧工地