三大区块链平台(BTC、ETH、Fabric)使用的编程语言和智能合约编程语言


比特币BTC

比特币是第一个真正意义上的区块链,不过从严格意义上来讲,它对智能合约的开发者是不友好的。

1. 比特币系统使用 C++ 开发。

2. 智能合约:可以用一种低门槛的编程语言Bitcoin Script在比特币系统上编写智能合约。另一种较高级别的语言是Ivy,它可以编译成Bitcoin Script。Ivy能够帮助你编写自定义的比特币地址,这种地址与隔离见证(SegWit)兼容,在比特币协议(包括签名检查、hash特征值(commitment)和时间锁)的支持下,可以执行任意条件组合。

以太坊ETH

1. 以太坊系统,官方推出了 C++ 开发版本和 Go 开发版本。

2. 以太坊有四种专用语言可以用来开发智能合约:
  · Solidity ,受JavaScript 启发
  · Serpent ,受Python启发
  · Mutan,受Go 启发
  · LLL 受Lisp 启发
这四种语言都是为面向合约编程而从底层开始设计的语言,但从目前的发展来看,Solidity已经称为以太坊智能合约开发当之无愧的首选语言。Solidity的语法类似于JavaScript,这降低了学习门槛,易于被掌握和使用,因为JavaScript是Web开发者的常用语言。

Hyperledger-Fabric

1. 超级账本中的 Fabric 系统是用 Go 语言开发的。

2. 超级账本可以使用gojava或者nodejs来开发智能合约,不过支持最好的还是go语言

Go语言是为了解决分布式计算,是云计算领域的新兴语言。而区块链是典型的分布式数据存储系统,使用Go语言是绝配。