区块链技术入门,涉及哪些编程语言

Python011

区块链技术入门,涉及哪些编程语言,第1张

Go语言

Go语言(Golang)是谷歌2009年推出的一种全新的编程语言,可以在不损失应用程序性能的情况下降低代码的复杂性。谷歌首席软件工程师罗布派克(Rob Pike)说:“我们之所以开发Go,是因为过去10多年间软件开发的难度令人沮丧。”

除比特币是由C++开发以外,目前最主流坊的客户端均有go语言开发,足以可见Go语言在整个区块链行业的地位。

C++

C++ 进一步扩充和完善了 C 语言,是一种面向对象的程序设计语言。C++ 可运行于多种平台上,如 Windows、MAC 操作系统以及 UNIX 的各种版本。C++是一种使用十分广泛的计算机程序设计语言。它是一种通用程序设计语言,支持多重编程模式,例如过程化程序设计、数据抽象、面向对象程序设计、泛型程序设计和设计模式等。

大多数的区块链企业都选择用C++编写区块链的底层,最著名的有比特币、ripple等,主要体现的是强计算性。

Java

Java不同于一般的编译语言或解释型语言。它首先将源代码编译成字节码,然后依赖各种不同平台上的虚拟机来解释执行字节码,从而实现了“一次编写,到处运行”的跨平台特性。而区块链项目的开发,对Java有着明显的依赖性。

其他的还有Python、系统架构、以太坊、Linux、hyperledger、JavaScript等都会有涉及。

单从运行速度两个语言都很优秀,但运行速度不是我们唯一追求的指标,就像汇编语言写的程序运行速度很快,但我们绝大多场合都不会采用它。

背后更重要的还有这门语言对应的生态

比如企业要用人的时候能不能快速招到会使用它的人? 对求职者来说,我学习这门语言能不能带来更多的工作机会?用这个语言开发应用的时候遇到问题的时候能不能快速找到资料并得以解决?

go语言历史长、生态好、运行速度快,在服务端上面有所作为,比如为比特币、莱特币开发的闪电网络就是用go写的。 语法上和类C语言有很大不同。

Dart是新出的语言,配合flutter是很好的客户端开发语言。 语法没那么奇怪, 因为新所以生态自然是跟不上的。

Dart能不能用在服务端? 我个人觉得是可以, 毕竟可以Dart是可以转成javascript的,运行在Nodejs下, 借助于NodeJs生态,dart也可以做很多事情。

不知道你们有没有注意到,现在有很多新语言都支持翻译成Javascript。比如新的dart、kotlin, 还有ts是直接针对javascript语法加强而获得成功。

话说得再多, 不如自己亲自去体验一下。 jsrun上面支持30多种语言的在线运行环境, 先体验再做决定你到底要学哪一门语言。

http://dart.jsrun.net

http://go.jsrun.net