前言
以下这段话是从维基百科翻译过来的
如果您还没有听说过WebAssembly,请参阅TL; DR:WebAssembly是一种与JavaScript一起在浏览器中运行的新语言。恩,那就对了。JavaScript不再是浏览器中运行的唯一语言!
但是,不仅仅是“不是JavaScript”,其区别还在于,您可以将代码从C / C ++ / Rust(甚至更多!)之类的语言编译为WebAssembly,并在浏览器中运行它们。
由于WebAssembly是静态类型的,使用线性内存并以紧凑的二进制格式存储,因此它也非常快,最终可能允许我们以“接近本机”的速度运行代码,即以接近您的速度运行代码。
通过在命令行上运行二进制文件获取。利用现有工具和库在浏览器中使用的能力以及相关的提速潜力,是使WebAssembly如此吸引网络的两个原因。
到目前为止,WebAssembly已用于各种应用程序,从游戏(例如Doom 3)到将桌面应用程序移植到Web(例如Autocad和Figma)。它甚至在浏览器之外使用,例如,作为无服务器计算的一种高效灵活的语言。
本系列文章将从一个C++研发工程师的角度介绍什么是WebAssebmly、以及它的环境搭建、编出简单的事例程序、并带着进行调试C/C++。
|版本声明:山河君,未经博主允许,禁止转载!
系列文章目录
WebAssebmly初级
WebAssebmly中级
总结
实际上这个技术正是推出实在2018年,目标是很宏伟,几乎是想实现任何语言都可以已二进制格式的文件进行加载到浏览器中。目标很宏伟,现实很骨感,对于软件开发人员来说,一门好不好的语言总归要在编译器中实现,如何整合编译、调试等等问题是很困难的。