百科问答小站 logo
百科问答小站 font logo



如何看待 WebAssembly 这门技术? 第1页

  

user avatar   hongbo_zhang 网友的相关建议: 
      

最近有很多碎片化时间,读了下wasm的规范,也实现了一个完整的wasm的VM,谈下自己的看法:

wasm类似于一个跨平台的C语言,但是出于安全因素加了一些限制,比如不能内嵌汇编,不能任意跳转,其抽象
程度类似于C语言,所以VM,JIT,AOT都很好做,而且做的也可以很轻量级。

先不考虑web相关的东西,wasm 的价值主要有以下几点:

- 它是一个标准,解析起来也比较简单,能跑wasm的设备会比较多,甚至包括大量低端的IOT设备

- 分发比较容易,reachability很高。

由于跨平台特性,一旦生成了字节码以后可以预计将来十年,二十年依然可以跑起来。
这一点其实很重要,现在的软件构件系统太复杂了,一旦软件的作者不再维护了,已有的软件大概率就被废弃了。
编译输出成wasm以后,它的软件寿命会大大延长。

- 安全。因为前面提到wasm的运行时实现起来很容易,所以相对定制一个也比较轻松,这样可以做一些细粒度的控制。
比如只允许部分网络,文件访问等。

wasm对于web 我觉得不会削弱javascript的生态,反而会增强这个平台的生态,以前一些web不能做的,现在借助wasm
也可以做了。当然也有些不利的因素: 比如原本有simd.js proposal,因为wasm的出现simd指令只能在wasm上实现了,
但总的来说利大于弊。




  

相关话题

  浏览器解析Html一般是边下载边渲染么?如果是边下载边渲染的话,Html又使用GZIP格式传输,如何能够做到没有完全下载就可以渲染的呢? 
  如何看待侯捷所说的「源码面前,了无秘密」? 
  为什么有人在学习初段效率惊人,而在过了入门阶段之后兴趣与学习能力都迅速下降? 
  当程序员需要天赋吗? 
  .NET 会翻身吗? 
  作为一个有理想的程序员,必读的书都有哪些? 
  像C语言这样的编译型语言能否在不同CPU上,通过相同标准库的编译器,用源代码实现跨平台? 
  掌握很多门计算机编程语言会不会记串啊?记串了咋办? 
  学习编程的过程中可能会走哪些弯路,有哪些经验可以参考? 
  设计模式是不是有点太「玄」了? 

前一个讨论
脂肪酶可以水解体内脂肪,但为什么医生都不建议摄入脂肪酶来减肥呢?
下一个讨论
2021 年你存款目标多少,存了多少钱?





© 2025-02-23 - tinynew.org. All Rights Reserved.
© 2025-02-23 - tinynew.org. 保留所有权利