火狐的野望
Posted crazylights
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了火狐的野望相关的知识,希望对你有一定的参考价值。
生逢乱世
作为IT技术人,谁不掌握几门编程语言。
若论编程语言的兴衰交替,犹如汉末之乱世,你方唱罢我登场,好不热闹。
随着一代一代炮灰的落去,目前逐渐形成了:系统级别、应用级别、前端级别三个大层次的划分,每个层次都有占据优势的存在。
系统级别被 c/c++ 父子占据,偏安一隅,自得其乐。
应用级别争夺最凶 c c++逐渐丧失应用级别的战场,java c# python js 好不热闹
前端级别则目前js独领风骚,web前端自不必谈,app前端electroncordova 异端凸起,qt,wpf 灰头土脸无意再战。
很多技术人都以为鼎足之势已成,天下再难变化,预言终点的人总是要被打脸的。
犹如福山的历史终结论,美国就是人类历史的终点,现在谁还觉得美国是人类文明的灯塔?
可是谁也没想到,搅局者,居然是他
火狐的野望
我懂得你的第一反应:这不是哪个浏览器市场份额忽略不计,已然成为可有可无的角色的火狐吗?
俺也一样。
不知不觉间,webassembly已然是w3c标准了。
固然有w3c 巨头互相扯皮,火狐乘乱而上。
谁也没有料到 webassembly居然是一盘大棋。
单独一个标准其实没什么,操作系统三巨头也没把他当回事,浏览器而已,前端的一部分,他影响力非常有限。
是的,单这一点,火狐不足以撬动什么。
项庄舞剑,意不在此。火狐推动webassembly 也不是为了一个浏览器标准而来。
真正的意图,最近才浮出水面
当火狐初搞Rust,很多人不以为然,c c++的帝国岂是那么容易撬动的?
当RustWasm项目出现,很多人以为是火狐无奈之举,因为三巨头对webassembly编译方案都比较消极,火狐不得不自己上马。
以为搞rust->webassembly 的工具链是火狐的迫不得已。
确实,rust初宣布定位是搞底层,做操作系统开发的语言。特别底层。Webassembly是web前端的特定方案,特别前端。这一头一尾的跨度太大,完全无法衔接。
但是,字节码联盟成立了。
Webassembly要离开web了,变成一个和nodejs一样的应用开发环境。
此时,链条都接上了
Rust才是杀手锏,Rust这个自行车齿轮的图标或许早已预示了一些什么。
Rust的全层级制霸的理想,暴露了。
系统级别,Rust
前端级别 浏览器中有webassembly,火狐有rustwasm 工具
而且经过对比,这个工具的体验优于火狐的c++->wasm工具。
也可以认为 浏览器 rust
大前端中的应用前端,和应用级开发,rust比较缺乏。
而字节码联盟补上了这一环
字节码联盟是Mozilla、Fastly、Intel 与 Red Hat 联合成立的新组织,他的目标就是把webassemblly打造成下一个nodejs
字节码联盟有两个主要产品
wasmtime 提供webassemblly的执行环境。犹如dotnet nodejs
wasi 提供执行环境可用的API,如文件访问,等等,这在dotnet中叫dotnet framework,在nodejs 中就是node默认库
所以他们其实是同一个产品,火狐版的nodejs,火狐版的dotnet
自此,火狐的链条清晰了。
Rust 成为了一个真正的全栈开发语言。
全栈开发语言
Rust 可以搞底层、可以搞应用,还可以搞web
作为一个全栈开发者,面对一个Rust这样的语言,不得不说:
火狐,我服。
来写你的第一个rust程序吧
第一步、安装rust工具链
https://www.rust-lang.org/tools/install
按网站提升操作即可
第二步、创建项目
命令行执行
cargo new helloworld
将在当前目录创建一个命令行程序项目,项目名为helloworld
cargo 是rust的集成工具,可以build,可以下载依赖包,可以增加工具命令。嗯,简直和dotnetcore的dotnet 命令功能一模一样
第三步、编译项目
1.命令行cd进入项目目录
2.命令行执行cargo run
还是和dotnet 一样,run 就是编译并执行当前项目。
当然你也可以 cargo build 然后自己去跑exe。
源码如下:
fn main() {
println!("Hello, world!");
}
fn 表示这是一个函数,println!是个宏,表示往输出位置上输出内容。
看这熟悉的标点符号,还是C系,不必担忧。许久不写blog了,后面就开始愉快的rust学习之旅了,又有东西可以写了。
以上是关于火狐的野望的主要内容,如果未能解决你的问题,请参考以下文章
火狐火狐火狐火狐火狐火狐火狐火狐火狐火狐火狐火狐火狐火狐火狐火狐火狐火狐火狐火狐火狐火狐火狐火狐火狐火狐火狐火狐火狐火狐火狐火狐火狐