mt logoMyToken
Market cap:
0%
FGI:
0%
Cryptocurrencies:--
Exchanges --
ETH Gas:--
EN
USD
APP
Ap Store QR Code

Scan Download

秃头率最高 ! Rust是最有前途的区块链编程语言?

Collect
Share

区块链世界的语言有很多种,包括但不限于Javascript、C#、 C++、 Python、 Golang、Solidity、 Java以及Rust,那么究竟哪种语言的市场最大,以及哪种语言最具潜力呢?

Python和Java最主流,高薪比例最高为C#、Golang和Rust

我们不妨先看看市场的实际需求是怎样的:

p10 p11

(数据来自indeed.com,图片自制)

根据indeed.com提供的数据显示,当前美国市场关于Python语言的区块链职位数为455个,其中年薪超过14万美元的职位有87个(高薪比例为19.12%),主要雇主包括IBM、Capital One、Cisco、Accenture、Amazon.com等。

P4

而关于Java的区块链职位数为469个,其中年薪超过14.07万美元的职位有89个(高薪比例为18.97%),主要雇主包括Amazon.com、Capital One、IBM、Accenture、Cisco等。

p2

而关于Javascript的职位数为364个,其中年薪超过13万美元的职位有78个(高薪比例为21.42%)。主要雇主包括IBM、Accenture、Ripple、block.one、overstock等。

关于Rust的职位数为49个,其中年薪超过14.08万美元的职位有11个(高薪比例为22.44%),主要雇主包括Chronicled、JPMorgan Chase、NEAR、Protocol Labs等。

p7

各编程语言PK:Solidity、Python最易学,Rust难度最高

对于‘哪种语言最难学’这个问题,每个人都有自己的想法,衡量的标准也不太一样,那如果按开发者头发浓密度的标准来看,那么我们可初步地排个名:Solidity < Python < Javascript < Java / C# < C++ < Go < Rust

(注:开个玩笑,这个排名参考了区块链开发者Radoslaw Fabisiak的说法)

cb

(图片:Coinbase CEO)

总的来说,Solidity是一种静态类型语言,对于掌握javascript语言的人来说,Solidity是很容易学的,但其缺点也非常明显,即Solidity并不是一种通用语言(基本只适用于以太坊生态系统),而且使用这种语言,犯错误也是很容易的,因此其需要开发者非常详细地测试自己的代码。

相比之下,Python是一种流行的动态类型编程语言,Python支持面向对象和函数式编程,这种语言的受欢迎程度是显而易见的,其优点是易学,也有很多预设计的库和框架可用,并且它也是快的,而其缺点是: (1)主要用作服务器语言; (2)没有那么智能;

而Rust,其语法类似于C++,它的优势在于它是一种强类型语言(适用于大规模系统开发),并且是具有安全导向的,此外其效率与C++一样快。

而其存在的缺点便是:(1)非常难学,(2)处于发展初期,因此比较小众,所以社区相对其他语言而言(比如javascript)是相对较小的,相关完成的库也较少,因此开发者可能不得不从头写很多问题。

好了,我们简单地了解了下上面三种语言,那问题来了,究竟哪种语言更适合区块链开发?

如果我是项目方,为了安全考虑,那么我可能会偏向于选择Rust,但这也意味着开发经费会加速燃烧。

例如Parity Technologies的Dmitriy Kashitsyn这样表示:

“使用Rust,是因为它让我们可以毫无畏惧地编写复杂的、性能卓越的软件,我们可以自由地试验,无论是一个简单的命令行实用程序还是一个多线程的怪物,它都没有什么区别。Rust确保我们的程序没有未定义的行为、数据争用或任何内存安全问题。更不用说,Rust速度极快,写起来很有趣,易于阅读,基本上运行时间为零。”
而如果我是一名区块链开发者,那么为了拿到更好的报酬,那我也可能会偏向于选择Rust,但这也意味着自己要花很多精力去掌握这门编程语言。

比如开发者Brenden Matthews在他的文章中写道:

“最近,我用Rust编写了一些小程序,在读完一半的《Programming Rust》之后,我还是对Rust不太了解。我认为了解该语言的一个好方法是解决《Cracking the Coding Interview》一书中的189个问题。”
当然,选择另一项主流语言,也是非常必要的,就比如Python。

选择Rust的区块链项目有哪些?

截至目前来看,第一个选用Rust语言的区块链项目,似乎是MaidSafe,此后这启发了大名鼎鼎的Gavin Wood,后者就选用这一语言编写了Parity客户端(长期霸占以太坊客户端NO.1位置),从那以后,Rust语言才被区块链社区所熟知,而除了Parity客户端,Gavin Wood的polkadot/substrate也是使用了Rust语言进行的开发。

另外,备受关注的隐私币炸子鸡Grin也采用了Rust语言。

而国内的Nervos项目也同样是采用了这一语言。

而通过上面的图片,我们还可以看到,Filecoin(Protocol Labs)、eos(Block.one)、Dfinity等多个主流公链项目都在考虑使用Rust语言。

笔者认为,区块链世界的秃头率将会越来越高,你做好准备了吗。

参考文献:

1、 Which programming language is the best to be a blockchain developer

2、why-rust :https://medium.com/paritytech/why-rust-846fd3320d3f

3、 Programming in Rust: the good, the bad, the ugly

4、 Rust今天4岁啦, 为什么越来越多的知名项目用Rust来开发

Disclaimer: The copyright of this article belongs to the original author and does not represent MyToken(www.mytokencap.com)Opinions and positions; please contact us if you have questions about content