大家好,我是蔡上上。之前在互联网大厂做了6年的程序员,现在在SCAI实验室做Web出海项目。本文源自我在SCAI实验室的一次分享,原因是SCAI实验室的有些小伙伴在项目中需要用到wasm,但之前并没有了解过。这也让我意识到,很有必要给一些没有相关知识的人把这一部分内容介绍一下。
Web出海是生财最近的超级标。很多没有技术背景的圈友,在AI的帮助下也能开发出不错的网站。但随着开发的深入,有些知识上的短板还是要补齐。WebAssembly目前在Web开发生态中占据着比较关键的生态位,随着开发的深入,你不可避免地会在某个节点用到它。
比如说,如果你的项目里有视频剪辑、音频处理、图像编辑、语音识别等功能,你很可能需要考虑一下wasm。
虽然现在有AI可以帮助写代码了,但是有些决策需要你自己定下来之后告诉AI,这个看我后面的介绍就会了解。现在市面上的wasm教程都非常讲的很专业,不适合非程序员观看。
本文旨在补齐这方面的信息缺失,给大家带来一个保姆级的教程。
本文面向的对象是非程序员背景,但目前正在使用AI来开发网站的朋友。因此,本教程会忽略一些不必要的技术细节。大部分的技术细节可以交给AI,我会在文中告诉你怎么跟AI说。但同时需要你至少知道怎么开发一个简单的网站,比如曾经跟过web航海或深海圈。你不需要非常了解技术,但至少知道JavaScript、NPM、vercel是啥。
本教程包含以下部分:
用非技术语言讲清楚什么是wasm
什么情况下应该用wasm
什么情况下不应该用wasm
如何使用wasm
wasm的一些可能的使用场景
附:在SCAI实验室的分享录屏:
什么是wasm
WebAssembly,简称wasm,是一种在浏览器中运行的低级编程语言。
编程语言的种类

编译型的语言,是事先把高级语言编译成机器码,因此运行的时候就直接运行机器码,速度会更快。
而解释型的语言,是在运行的时候才现场编译,因此多了一个编译的时间,速度会更慢。
网站开发使用的是JavaScript,属于解释型语言,在计算密集型的任务时,速度相比编译型的语言要慢一个数量级。因此浏览器场景下,非常需要一种计算效率远远高于JS的语言。
在传统的机器上,有汇编语言(Assembly),这是一种低级语言,可以直接跟机器交互(可以参考雷军下面的代码),因此速度非常快。于是Web端也诞生了类似的汇编语言WebAssembly。
几乎大部分的主流语言都可以编译成WebAssembly。因此这就体现了wasm的另一个优点,就是它可以使用其他语言的库。JavaScript毕竟只是一种语言,很多情况下,JavaScript是没有特别好的库可以使用的。
为了更好的阅读体验,来飞书看吧:
https://y0arjkskpp.feishu.cn/docx/FLBwdo4wfoyU9SxiTqLcN4F9nhc
Comments on "万字长文讲透Web开发早晚要掌握的WebAssembly(wasm)面向新手的教程" :