当前位置: 首页 > 科技观察

通过我们的新指南

时间:2023-03-19 13:29:13 科技观察

学习在WebAssembly中进行开发在过去的几十年中,Web浏览器一直是最受欢迎的跨平台应用程序。从另一个角度看浏览器,它是最流行的应用程序交付平台之一。想一想您使用的所有网站已经取代了您过去使用桌面上运行的软件进行的活动。您仍在使用该软件,但您是通过浏览器访问它,并且它运行在其他人的Linux服务器上。为了不断优化我们所有人使用的软件,软件开发界早在2019年就引入了WebAssembly,作为一种通过Web浏览器运行编译代码的方式。应用程序性能比以往任何时候都好,WebAssembly代码可以用远远超出通常的PHP、Python和JavaScript的语言生成。目标和语言WebAssembly最强大但也是最令人困惑的事情之一是“WebAssembly”一词既指语言又指目标。WebAssembly是一种汇编语言,但没有多少人选择直接用汇编编写代码。甚至汇编语言最终也会转换为二进制格式,这是计算机运行代码的要求。这种二进制格式也称为WebAssembly。不过,这很好,因为这意味着你可以用你选择的语言编写一些最终在WebAssembly中发布的东西,包括C、C++、Rust、Javascript和许多其他语言。WebAssembly的入口是Emscripten,它是一个LLVM编译器工具链,可以从您的代码中生成WebAssembly。安装Emscripten要在Linux或macOS计算机上安装Emscripten,请使用Git:$gitclonehttps://github.com/emscripten-core/emsdk.git将目录更改为emsdk目录并运行安装命令:$./emsdkinstalllatest$./emsdkactivatelatestEmscripten工具链中的所有内容都安装在emsdk目录下,对系统的其余部分没有影响。为此,在使用emsdk之前,必须source$source./emsdk_env.sh如果打算经常使用emsdk,也可以在.bashrc脚本中添加环境设置。要在Windows上安装Emscripten,您可以在WSL下运行Linux。请访问Emscripten网站以获取更多安装信息。HelloWorld下面是一个用C++编写的简单的“HelloWorld”应用程序。#includeusingnamespacestd;intmain(){cout<<"Helloworld";return0;}首先将其作为系统的标准二进制文件进行测试:$g++hello.cpp-oworld$。/worldHelloworld看到它按预期工作,使用emcc将其构建为WebAssembly:$emcchello.cpp-oworld.html最后,使用emrun运行它:$emrun./world.htmlemrun工具是一个方便的本地命令测试。当您在服务器上托管您的应用程序时,emrun不是必需的。了解有关WebAssembly的更多信息使用WebAssembly进行开发可以朝着许多不同的方向发展,具体取决于您已经了解的内容和想要构建的内容。如果您了解C或C++,那么您可以用它们编写您的项目。如果您正在学习Rust,则可以使用Rust。甚至Python代码也可以使用Pyodide模块作为WebAssembly运行。你有很多选择,而且没有错误的开始方式(甚至有COBOL到WebAssembly编译器)。如果您渴望开始使用WebAssembly,请下载我们的免费电子书