区块链编程

区块链世界中的许多精力和兴奋都集中在加密货币,其暴涨的估值以及令人震惊的崩溃上。 大多数企业界都静静地待在场上,弹出一些玉米,然后定居下来欣赏表演。

但是,随着公司开始将脚趾伸向动荡的水域,这种情况正在慢慢改变。 有些人被巨额财富的甩索和诱惑所吸引,因为他们希望像美元或欧元一样接受这种加密货币。 其他人对加密货币增强的区块链提供的坚如磐石的权威更感兴趣,他们想使用核心的数学和科学来支持自己的内部实践。 他们和他们的客户希望获得久经考验的机制所提供的某些保证。

[发现Bossie奖的获胜者:2018年企业最佳的开源软件,用于软件开发,机器学习,云计算以及数据存储和分析。 ]

在企业谨慎谨慎的世界与区块链狂野冒险的世界之间架起一座桥梁,并非适合新手。 即使您避免使用加密货币,并坚持简单地跟踪和验证交易的固定角色,正确设置密码也很重要。 这不是自定义原始代码的角色。 最好坚持使用一个完善的库,在这里,时间的考验和专门的用户社区挤走了这些错误。

适用于您的区块链堆栈的库在很大程度上取决于您公司拥抱区块链的方式。 那些希望依靠区块链作为合同真实来源的人将需要与正在出现的不同链条接口的库。 那些想使用不同货币的人将希望与不同交易所建立桥梁。

这里有10个最令人兴奋的库,它们可以作为将区块链集成到企业软件中的基础。

大链数据库

数据库和区块链都存储信息。 有些人喜欢争论差异。 BigChainDB背后的公司正试图通过创建具有区块链不变特性的分布式数据库来合并这些概念。 该系统回答了MongoDB的查询语言,并提供了一个复杂的权限体系结构来启用多种类型的不可变记录和资产。 社区版本带有开放源代码许可,或者您可以雇用公司进行咨询或生产支持。

比特币核心

比特币协议被设计为去中心化的。 想要使用比特币的最认真的开发人员将希望运行“完整节点”,这些节点完全参与将共识链添加到链中的共识构建过程。 Bitcoin Core是该软件的权威参考版,但也有类似Bcoin的克隆, Bcoin是一个JavaScript库,面向想要参与挖矿和交易的Node.js用户。 对于那些想要使用该叉子的人来说,还有一个Bcoin Cash。 如果您正在积极调查交易,Bcoin团队的BPanel库将充当“ BMS”,这是一种比特币管理系统,具有诸如WordPress或Drupal之类的内容管理系统中的所有标准功能。

币库

许多需要使用加密货币的人不希望挑战和参与交易的麻烦。 他们很乐意让别人来做这项工作。 Coinbase是最大,资金最雄厚的交易所之一,该公司还为希望通过它们处理交易的人提供API。 您将找到用于Ruby,PHP和Node的Coinbase库 ,该库将维护钱包,跟踪历史价格并以平台支持的四种主要硬币(比特币,比特币现金,Litecoin和以太坊)进行交易。

科尔达

Corda开源项目是银行业对区块链运动的贡献。 它不是货币,也不是银行的替代品,因为银行已经为结算付款提供了复杂的信任。 它更多是一个用于构造自己的分布式分类帐的库,这个想法略有不同,可以完成很多相同的事情。 公司或个人团体可以构建智能合约并使用分类账来跟踪资产所有权。 该守则更侧重于企业,而不是推翻金融业。

登船

为以太坊区块链创建智能合约或分布式应用程序需要大量的协调工作。 首先,必须先编译代码,然后进行测试,最后将其部署到网络中。 Embark是一组库和工具,包括代码编辑器,Web用户界面,事务浏览器以及许多用于更多内务处理的插件。 所有工作都像以太坊世界的IDE。

以太坊

以太坊平台更加复杂并且可以进行实验。 想要创建智能合约的开发人员可以使用更强大的语言来创建复杂的协议,以释放嵌入在区块链中的共享真相的更多潜力。 用Go编写的官方参考实现功能丰富,可在整个Web上运行。 那些想要在以太坊网络上运行节点的人可以创建一个完全参与者,观察者(灯光)或图书馆员(档案)的节点。 以太坊还为定义数字合同的代码开发人员提供了许多工具,例如将执行数字合同的虚拟机版本。

特定语言的爱好者经常可以找到以太坊堆栈的版本,这些版本可以直接实现以太坊代码,也可以借鉴很多结构。 例如, Pyethereum是一个带有命令行界面的核心库,用于使用Python与以太坊链进行交互。 喜欢Python并希望编写自己的智能合约的开发人员也可以探索Vyper ,这是一种用于开发合约的“安全性”语言,也被称为“ Pythonic”。 还有类似的库为其他语言,如Web3.js对JavaScript和Nethereum对于.NET。

在GUN 文档的任何地方都很难找到“ blockchain”一词,但是有很多相似之处。 官方的说法是GUN是“完全去中心化”的工具,用于在同级网络之间同步数据。 没有哪个大师可以控制单个真理。 确实,根本没有真正的共识协议,这与传统的区块链有很大不同。 但是,GUN仍然为构建分布式应用程序奠定了良好的基础,因为信息可以轻松,快速地通过网络流动,从而使文档声称“几乎没有可能丢失重要信息”。 如果您的算法不需要就真理达成共识(这种情况经常发生在每个成员都是独立的社交网络中),那么GUN之类的工具就可以提供我们认为的区块链的许多分布式收益,而无需花费额外的时间和精力。任何证明算法的费用。

超级账本

Hyperledger是构建在区块链上的最大的开源项目之一 ,它是用于维持广泛基础设施以汇聚共享真相的大量工具和框架的集合。 所有这些共同发展的工具旨在支持企业内部的独立实施。 例如, 网格旨在培育一种区块链,该区块链可跟踪通过供应商网络进行的物料和付款的流动。 它的库集合提供了一组预定义的数据类型和格式,可以针对特定的制造业进行定制。 Irora和Sawtooth等许多子项目都设计为模块化的,从而使开发人员可以选择正确的权限控制和共识构建的组合。

法定人数

区块链上许多数据的公共性一直是特征和挑战。 Quorum是JP Morgan Chase的以太坊的一个分支,它是一项实验,将更好的隐私保护选项和更有效的达成共识的方法结合在一起。 在公司内部或财团成员之间构建的私有区块链可以使用Quorum创建更小,更快和更简单的区块链,这些区块链仍然可以提供共享真相的许多希望,而不会产生额外的成本和采矿麻烦。

例如, Raft模型指定负责对链内容做出最终决定的领导者节点,以及接受这些决定的后续节点。 没有争议意味着可以在几毫秒内完成交易。 Istanbul模型为拜占庭式的容错提供了更少信任的更精细的网络。

Quorum还提供了基于权限的机制,用于创建私人交易并向财团其他成员隐藏详细信息。 各个节点为公共数据和私有数据维护独立的Merkle树,从而使两者可以同时发展。

松露

使用针对该任务进行了优化的IDE,编写自己的智能合约要容易得多。 松露是能够支持创建,测试和部署写入合同密实度 ,为复仇blockchain最流行的语言之一。 继续,您的文本和Truffle IDE将在与其他由EthPM管理的以太坊软件包集成的同时编译代码。

测试是使用在本地运行的以太坊区块链的私有版本(称为Ganache)在“洁净室环境”中开始的。 可以用Solidity编写测试,以测试区块链世界内部的行为,也可以编写JavaScript / TypeScript,以模拟合同上线时与外界的交互方式。

Truffle项目还包括Drizzle ,这是React / Redux数据管理工具的集合,可以使Web应用程序的构建前端更加容易。

翻译自: https://www.infoworld.com/article/3396216/10-best-toolkits-for-blockchain-programming.html

区块链编程

区块链编程_区块链编程的10个最佳工具包相关推荐

  1. python适合开发区块链吗_区块链入门开发语言选择 python适合开发区块链吗

    区块链用什么需要开发?在哪可以了解? 从现在各个公有链的使用情况来看,来一代的都是参考Bitcoin,使用C 开发,而新一代的区块链技术使用的语言则是Go,Python,C#和JavaScript.以 ...

  2. 区块链项目_趣链科技Hyperchain

    2016年12月,浙商银行与趣链共同打造的以区块链技术为支撑的移动数字汇票平台 2017年8月,浙商银行又推出了业内首个企业"应收款链平台",在该平台上面,应收账款可以转化为电子支 ...

  3. python最简单的图形编程_图形化编程、Python、Java、C++到底哪个适合你?

    近两年,学习编程的热潮一波接一波,编程语言也是五花八门.盒子姐姐找到了一份2019年编程语言热度排行榜,其中,Java.C语言和Python高居榜首. 有些小伙伴就要问啦,编程语言这么多,区别在哪里呢 ...

  4. java函数式编程_说说函数式编程的那些事

    今天这篇文章我们主要来聊聊函数式编程的思想. 函数式编程有用吗? 什么是函数式编程? 函数式编程的优点. 总所周知 JavaScript 是一种拥有很多共享状态的动态语言,慢慢的,代码就会积累足够的复 ...

  5. java面向方面编程_面向方面编程的介绍----基本概念

    面向对象的编程中常用的概念是:继承.封装.多态.在面向方面的编程中常使用的概念是:advices/interceptors, introductions, metadata, and pointcut ...

  6. 函数式编程和面向对象式编程_比较函数式编程,命令式编程和面向对象的编程

    函数式编程和面向对象式编程 As Oracle Corporation has introduced some Functional constructs in Java SE 8, now-a-da ...

  7. 编程最佳字体_网站上使用的10种最佳装饰字体

    编程最佳字体 我们选择的字体在网站中起着主要作用. 正确的字体组合可以使您的网站脱颖而出. 此外,他们与您的品牌紧密结合,以传递正确的信息. 在各种字体样式中,装饰字体是一个不错的选择,如果您想产生影 ...

  8. python编程狮的在线编程_‎「Python编程狮-零基础学Python」をApp Storeで

    Python编程狮是W3Cschool编程狮旗下专门为零基础Python编程爱好者打造的一款入门工具App,致力于帮助初学者入门,轻松迈入编程世界.学Python,从这里开始! [零基础也能学]初学者 ...

  9. 常州儿童学机器人编程_常州幼儿编程机器人

    常州幼儿编程机器人 来源:教育联展网    编辑:佚名    发布时间:2019-07-08 少儿编程的发展前景 18年4月28日,全球首部人工智能普教教材--<人工智能基础>(高中版)在 ...

最新文章

  1. 动态内存分配与柔性数组
  2. 玩儿转物联网IoT - 在Beagle Bone Black上运行node.js 程序
  3. HP Webinspect 10 访问wap的url
  4. 【自由随想录(一)】
  5. 计算机应用系统的开发活动,计算机应用教学训练系统的开发与应用.doc
  6. Spring Controller接收http传值
  7. pip更新方法(win与linux)版本
  8. python的计算_python 计算方位角实例(根据两点的坐标计算)
  9. 车标知识学习网页开发,与Flask通过base64展示二进制图片 #华为云·寻找黑马程序员#
  10. 不同发行版linux介绍
  11. PTA题---求两个有序序列中位数所体现的思想。
  12. viper4android md,【xposed】微信主题模块(MDWechat)v3.5.0
  13. Ubuntu安装和显卡驱动安装
  14. kernal tch 下载 天正_kernal tch 下载 天正_打开cad图时提示TCH_KERNAL 缺乏解释器天正图形看不见, 请下载天正插件.........
  15. 世界地图展开图,来自 Simon's World Map
  16. 【2D转换之盒子居中】
  17. html表格优秀作品,40多个漂亮的网页表单设计实例
  18. step7-- simatic -- PLC - MPI --
  19. 如何在 Excel 中锁定受保护工作表的特定区域?
  20. 用JS操作FRAME中的IFRAME及其内容

热门文章

  1. 电子邮件礼仪(E-Mail Etiquette)
  2. 应广单片机定时器TIME16配置
  3. UE4——有关于Windows RawInput插件和Vendor ID/Product ID
  4. 线性代数:约当标准型学习笔记
  5. 4大行业实战案例,深度解析数字化转型升级路径
  6. web安全颜色以及微软支持颜色
  7. 【面试】非技术类面试常见问题
  8. 【NLP】如何评价一个摘要是合适的
  9. Linux Shell nohup命令
  10. 无聊的活动/缘生意转(2018 Nova OJ新年欢乐赛B题)解题报告