最有前途的区块链编程语⾔有哪些?
目前流行的编程语言区块链世界的语⾔有很多种,包括但不限于Javascript、C#、 C++、 Python、 Golang、Solidity、 Java以及Rust,那么究竟哪种语⾔的市场最⼤,以及哪种语⾔最具潜⼒呢?⽽有义务⾮要付你⼗个⼩时的职场⼈薪资回报,哪怕你竭尽全⼒了。
Python和Java最主流,⾼薪⽐例最⾼为C#、Golang和Rust
我们不妨先看看市场的实际需求是怎样的:
根据indeed提供的数据显⽰,当前美国市场关于Python语⾔的区块链职位数为455个,其中年薪超过14万美元的职位有87个(⾼薪⽐例为19.12%),主要雇主包括IBM、Capital One、Cisco、Accenture、Amazon等。
⽽关于Java的区块链职位数为469个,其中年薪超过14.07万美元的职位有89个(⾼薪⽐例为18.97%),主要雇主包括Amazon com、Capital One、IBM、Accenture、Cisco等。
⽽关于Javascript的职位数为364个,其中年薪超过13万美元的职位有78个(⾼薪⽐例为21.42%)。主要雇主包括IBM、Accenture、Ripple、、overstock等。
关于Rust的职位数为49个,其中年薪超过14.08万美元的职位有11个(⾼薪⽐例为22.44%),主要雇主包括Chronicled、JPMorgan Chase、NEAR、Protocol Labs等。
各编程语⾔PK:Solidity、Python最易学,Rust难度最⾼
对于‘哪种语⾔最难学’这个问题,每个⼈都有⾃⼰的想法,衡量的标准也不太⼀样,那如果按开发者头发浓密度的标准来看,那么我们可初步地排个名:
Solidity < Python < Javascript < Java / C# < C++ < Go < Rust
(注:开个玩笑,这个排名参考了区块链开发者Radoslaw Fabisiak的说法)
总的来说,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)、)、Dfinity等多个主流公链项⽬都在考虑使⽤Rust语⾔。
笔者认为,区块链世界的秃头率将会越来越⾼,你做好准备了吗。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论