热门标签
区块链开发公司 区块链平台开发 区块链溯源
小编推荐
大家都在关注
最新区块链资讯
随机推荐

当前位置:主页 > 新闻资讯 > 区块链资讯 > 不同的区块链技术,涉及那些编程语言?

不同的区块链技术,涉及那些编程语言?

2020-02-22 03:16:57 83 文章来源:汉全科技 作者:BTC

标签:

  区块链技术入门,涉及那些编程语言?比特币、超级账本Fabric和以太坊这三种区块链中,分别使用什么开发语言来进行智能合约编程,并提供你进一步学习的资源链接。

  1.比特币

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

  可以用一种低门槛的编程语言Bitcoin Script在比特币系统上编写智能合约。每个比特币地址都对应着一个Bitcoin Script程序。

  另一种较高级别的语言是Ivy,它可以编译成Bitcoin Script。Ivy能够帮助你编写自定义的比特币地址,这种地址与隔离见证兼容,在比特币协议的支持下,可以执行任意条件组合。例如:

  contract EscrowWithDeplay{ sender: PublicKey recipient: PublicKey, escrow: PublicKey, delay: Duration, val: Value}{ clause transfer(sig1: Signature, sig2: Signature){ verify checkMultiSig([sender, recipient, escrow],[sig1, sig2]) unlock val } clause timeout(sig: Signature){ verify checkSig(sender, sig) verify older(delay) unlock val }}

  比特币“虚拟机”——协议中负责执行Bitcoin Script程序的一部分——与以太坊或者Chain Protocol等其它智能合约平台的虚拟机相比(功能)更加有限,其指令系统甚至不是图灵完备的。但Bitcoin Script的确提供了一组很有用的基础原语(primitives)——签名校验、哈希计算以及相对和绝对的时间锁——另外还能对这些原语进行自由组合。

区块链开发

  2.超级账本fabric

  fabric是超级账本大家庭中最成熟的一个区块链项目,主要用于行业链、联盟联或私有链,它不需要通过挖矿来形成共识,因此可以达到很高的交易速度。

  在fabric中,智能合约被称为链码,实质上是控制区块链网络中的不同实体或相关方如何相互交互或交易的业务逻辑。简言之,链代码将业务网络交易封装在代码中。可以调用链代码来设置和获取账本或 world state。

  超级账本可以使用go、java或者nodejs来开发智能合约,不过支持最好的还是go语言。下面是使用go开发的一个简单地fabric智能合约:

  package mainimport “fmt”import “github.com/hyperledger/fabric/core/chaincode/shim”type SampleChaincode struct {}func (t *SampleChaincode) Init(stub shim.ChaincodeStubInterface, function string, args []string) ([]byte, error) { return nil, nil}func (t *SampleChaincode) Query(stub shim.ChaincodeStubInterface, function string, args []string) ([]byte, error) { return nil, nil}func (t *SampleChaincode) Invoke(stub shim.ChaincodeStubInterface, function string, args []string) ([]byte, error) { return nil, nil}func main() { err := shim.Start(new(SampleChaincode)) if err != nil { fmt.Println(“Could not start SampleChaincode”) } else { fmt.Println(“SampleChaincode successfully started”) }}

  frabric的智能合约可以使用一个go中的类实现,它必须要实现约定的借口Init和Query。

  Init方法在链代码首次部署到区块链网络时调用,将由部署自己的链代码实例的每个对等节点执行。而只要在区块链状态上执行任何读取/获取/查询操作,就会调用 Query 方法。

  3.以太坊

  以太坊是第一个提供完善的智能合约开发框架的区块链,因此它也被称为区块链2.0的代表。事实上,目前绝大多数的区块链应用,包括ICO代币发行,都是基于以太坊来实现的智能合约应用。

  以太坊有四种专用语言可以用来开发智能合约:

  1、Solidity ,受JavaScript 启发

  2、Serpent ,受Python启发

  3、Mutan,受Go 启发

  4、LLL, 受Lisp 启发

  这四种语言都是为面向合约编程而从底层开始设计的语言,但从目前的发展来看,Solidity已经称为以太坊智能合约开发当之无愧的首选语言。

  Solidity的语法类似于JavaScript,这降低了学习门槛,易于被掌握和使用,因为JavaScript是Web开发者的常用语言。例如,下面是一个使用Solidity开发的简单但完整的智能合约:

  pragma solidity ^0.4.21;contract HelloWorld { string hello = “Hello World!!!”; event say(string _value); function sayHello() public { emit say(hello); } }

  合约代码第一行指定该合约使用的Solidity版本为0.4.21,不支持高于0.4.21版本的Solidity特性。

  在Solidity中,contract关键字包含的代码段即表示一个智能合约,它拥有一些成员变量和函数,看起来非常类似于传统的面向对象开发中的类。

本文链接:http://www.a6shop.cn/blockchain-news/1415.html

相关案例

私有链开发
私有链开发
南方航空安联云系统开发
南方航空安联云系统开发
联盟链开发
联盟链开发
选择汉全    品牌保证
01
雄厚公司资质
02
强大产品优势
03
敏锐行业前瞻
04
优质售后服务
汉全科技广东省高新技术企业证书
高新技术企业

汉全科技获得广东省高新技术企业,技术驱动商业创新

汉全科技广东股权交易中心证书
广州股权交易中心

汉全科技于2016年在广州股权交易中心成功挂牌,赢得广大企业事业的信赖

广州汉全信息科技有限公司团队照片
200+强大技术研发团队

团队核心成员来自实达集团,中国软件,唯品会,枫特红外等知名大型企业

广州汉全信息科技有限公司软件研发中心
13年+互联网行业技术沉淀

13年专注新商业程序研究和开发,万千用户品质见证

广州汉全信息科技有限公司软件知识产权证书
30项+软件着作权证书

获得30+互联网创新产品自主知识产权软件着作权证书

广州汉全信息科技有限公司资质荣誉
荣誉资质

汉全科技-中国区块链专业委员会创始会员单位(理事)

独家源码出售

各系统均提供专门的独家源码出售,方便客户自行系统开发。

产品更新迅速

每周均提供不同系统的功能点更新及优化,产品更新迅速,让您时刻立足行业前沿。

产品原生开发

产品原生开发,运行更快更流畅,让客户拥有更良好的体验。

专属定制开发

汉全可根据需求,为您专属定制开发,满足您全方位的产品需求。

方便二次开发

提供系统程序及二次开发文档,大大缩短开发进程,让您的系统快速上线。

全球3000+客户共同选择

产品功能稳定,获全球3000+家商业企业客户信赖,品质有保障。

设立战略研究院

设立专门的行业战略研究院,与行业内专家时刻保持密切联系,形成汉全独特的市场敏锐前瞻。

产品领先全国

领先全国,首家推出“汉全区块链商城”、“汉全区块链溯源”、等创新产品,并取得骄人的市场业绩。

国内最早开发搭建区块链商城系统

国内最早着手区块链商城系统平台的开发搭建,经过持续优化已达到系统稳定、功能持续全面更新中。

产品更新迅速

每周均提供不同系统的功能点更新及优化,产品更新迅速,让您时刻立足行业前沿。

强大的售后团队

强大的售前售后团队。配备专门的服务人员及技术人员1v1服务确保客户碰到的问题第一时间予以解决。

完美的技术支持

产品手册、操作教程、安装帮助等服务手册一应俱全,汉全为您提供完整的技术指导和行业支持,使您快速上手,轻松应对。

迅速响应服务

电话、QQ、工单、上门...汉全的售后人员随时为您提供迅速响应服务,及时应对客户提出的一切运营、技术难题。

全方位服务

QQ、电话等聊天工具全方位解答客户各种操作、技术难题,确保客户系统安全稳定,bug及时修复。

平台搭建部署全程指导

为各平台的搭建部署提供全程指导,即使创业小白,汉全也能助您实现平台快速上线和运营。

更多其他的服务

汉全将与您协同配合,提供优质的解决方案。持续跟进用户反馈,满足您的多方位其他需求。

0元免费试用
免费试用
6网合一网合一
全渠道营销
7*12小时售后×12小时
售后支持
100+营销功能
营销功能
200+团队支持
团队支持
30万商家选择万+
商家选择
广州汉全信息科技有限公司公众号