资讯专栏INFORMATION COLUMN

从Java到区块链:如何成为区块链开发人员

tanglijun / 3078人阅读

摘要:最近这些天,区块链是每个开发人员的谈资。区块链技术引起了政府和各国央行的注意简而言之,一切都表明区块链前景光明。是一组旨在促进区块链应用程序开发的项目。借助区块链技术,这一过程将变得更加安全和透明。

最近这些天,区块链是每个开发人员的谈资。来自各个领域的许多软件开发商现在正试图进入区块链市场。我们与Mobilunity的区块链软件开发人员Eugene Kyselev 讨论了他是如何走出区块链开发方面的第一步的,希望对大家有所帮助。

JAXenter:Eugene,请告诉我们您在区块链开发方面的经验。你是怎么开始的?

Eugene Kyselev:说起来很平淡,一切都在正确的时间出现,对我来说,区块链开发是一个合乎逻辑的延续。我从JavaScript和其他框架开始,我想继续朝这个方向发展。几年前,随着各种ICO和采矿趋势的开始,我毫不犹豫地决定尝试区块链开发。

区块链开发现在正在以光速发展。区块链技术引起了政府和各国央行的注意;简而言之,一切都表明区块链前景光明。

JAXenter:你认为“区块链时代”将持续多久?

Eugene Kyselev:很难说,这就像问“全球化时代将持续多久?”

我认为,只要对加密货币和其他区块链解决方案的需求不断增加,就需要持续一段时间。所有的一切,每件事物都会经历自己的发展,最终出现了加密货币和各种ICO,我很确定现在就是“区块链时代”,区块链技术还有许多其他重要的发现和创新应用。可以带来整个行业的新突破。

JAXenter:为什么要将技术专长转变为区块链开发?

Eugene Kyselev:没有所谓的技术技能转变这样的东西。Blockchain使用常见的编程语言,如C++,Java,Python,Go。但是像Solidity这样的新技术也会出现。Solidity是一种面向对象的编程语言,用于为以太坊区块链平台开发智能合约。另一项有前途的技术是Hyperledger,一种由开源技术组成的区块链平台。Hyperledger允许你创建分布式分类帐或你自己的区块链框架。

JAXenter:许多开发人员都在问“你需要做些什么来成为区块链或加密货币开发人员?”你会推荐他们怎么做?

Eugene Kyselev:凭着坚强的意志,你可以实现并学习一切。作为快速指南,我推荐IBM Blockchain 101课程。但对于初学者来说,你必须具备扎实的算法和数据结构知识,最重要的是加密算法。如果你是区块链工程师,那么深入了解Java/C或Python/Go也是必须的。

如果你专注于开发智能合约,则需要具备JavaScript开发经验,下一步是掌握Solidity。

JAXenter:你如何开始Java编写区块链程序?

Eugene Kyselev:这很简单。以Hyperledger Fabric Chaincode为例,要开始使用,你需要以下工具:

Gradle

JDK

Vagrant

首先,启动chaincode部署:

peer chaincode deploy - l java - n map - p /opt/gopath/src/github.com/hyperledger/fabric/core/chaincode/shim/java - c "{"Function": "init", "Args": ["a", "100", "b", "200"]}

然后,查询交易:

/opt/gopath/src/github.com/hyperledger/fabric/core/chaincode/shim/java $ peer chaincode invoke - l java 
- n 6d9a704d95284593fe802a5de89f84e86fb975f00830bc6488713f9441b835cf32d9cd07b087b90e5cb57a88360f90a4de39521a5595545ad689cd64791679e9 
- c "{"Function": "transfer", "Args": [ "a", "b", "20"]}"

查询后,初始化变量“a”和“b”:

/opt/gopath/src/github.com/hyperledger/fabric/core/chaincode/shim/java $ peer chaincode query - l java 
- n 6d9a704d95284593fe802a5de89f84e86fb975f00830bc6488713f9441b835cf32d9cd07b087b90e5cb57a88360f90a4de39521a5595545ad689cd64791679e9 
- c "{"Function": "query", "Args": ["a"]}"
{ "Name" : "a" , "Amount" : "80" }
  
  
/opt/gopath/src/github.com/hyperledger/fabric/core/chaincode/shim/java $ peer chaincode query - l java 
- n 6d9a704d95284593fe802a5de89f84e86fb975f00830bc6488713f9441b835cf32d9cd07b087b90e5cb57a88360f90a4de39521a5595545ad689cd64791679e9 
- c "{"Function": "query", "Args": ["b"]}"
{ "Name" : "b" , "Amount" : "220" }

JAXenter:告诉我们更多关于Hyperledger,R3 DLT和Solidity的信息。

Eugene Kyselev:让我们从Hyperledger开始吧。如上所述,它是区块链应用程序的开源平台(中心)。总的来说,Hyperledger不支持比特币和其他加密货币。Hyperledger是一组旨在促进区块链应用程序开发的项目。

自从互联网出现以来,没有一种技术像这项技术那样具有前景和开创性。互联网和区块链可以一起使用,以创建新一代的交易性应用程序,在业务流程的核心创建信任,建立问责制和透明度。

R3 DLT不是一项技术,而是一个区块链联盟,其中包括100多家银行,金融机构,监管机构,专业机构,服务公司和技术公司。

目标是利用该平台探索区块链技术的可能性,区域链技术被认为是创新的,同时总结已建立的参与者的想法和数据,并使国际支付更快,更可靠。

Solidity是一种强烈的面向JavaScript的语言,旨在开发在以太坊虚拟机(EVM)中运行的智能合约。由于Solidity具有类似JavaScript的语法,因此我可以轻松快速掌握该语言。主要缺点是尚未实现该语言的完整版本。因此,它仍然具有相当有限的功能集,并且受到许多错误的困扰。

JAXenter:现在有很多关于区块链的炒作。这项技术可以解决哪些问题?

Eugene Kyselev

至少会对下面这些问题有很大的帮助:

1.确保银行存款的安全

每年,银行都会因欺诈而损失巨额资金。区块链具有几乎无可挑剔的安全性,可以帮助他们解决这个问题。转换到区块链钱包的银行客户由唯一标识号而不是名称标识。此外,他们使用私钥来获取资金。在他们的帮助下,只有他们的所有者可以处置资金——即使银行也无法获得这些资金。这些安全措施确保了比特币和其他加密货币的安全性,以便他们可以轻松保护存款。

区块链上的云存储将能够更好地抵御黑客攻击

云存储公司使用集中式服务器来存储数据。出于这个原因,黑客可以从中窃取信息的风险增加——通过访问服务器,黑客自动渗透到整个网络。一个区块链上的云存储可以分散地保护你的数据,并且它们的节点也会断开连接。因此,它们不易受到攻击,甚至攻击节点也不会破坏整个网络。

2.货物运输速度更快

在物流方面,需要正确,快速地组织货物运输。关键是能够在整个供应链中跟踪货物。借助区块链技术,这一过程将变得更加安全和透明。此外,在去中心化的连续的记录将减少人类的作用和延迟的可能性。

3.选举舞弊

选举欺诈,伪造签名和举行会议,而不通知所有成员是在公司治理中最普遍的问题。所有这些问题都通过区块链技术的整合得到部分解决。例如,它可以跟踪和计算投票,从而消除任何人的声音不会被计算或伪造的。相反,每个投票参与者将收到一个唯一的密钥来做出决定。

谢谢!

分享2个区块链相关的交互式在线编程实战教程:

java以太坊开发教程,主要是针对java和android程序员进行区块链以太坊开发的web3j详解。

java比特币开发教程,本课程面向初学者,内容即涵盖比特币的核心概念,例如区块链存储、去中心化共识机制、密钥与脚本、交易与UTXO等,同时也详细讲解如何在Java代码中集成比特币支持功能,例如创建地址、管理钱包、构造裸交易等,是Java工程师不可多得的比特币开发学习课程。

这里是原文

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/24358.html

相关文章

  • Java区块如何成为区块开发人员

    最近这些天,区块是每个开发人员的谈资。来自各个领域的许多软件开发商现在正试图进入区块市场。我们与Mobilunity的区块软件开发人员Eugene Kyselev 讨论了他是如何走出区块开发方面的第一步的,希望对大家有所帮...

    W_BinaryTree 评论0 收藏0
  • 区块开发中使用的最流行的编程语言

    我们目前正处于一个新兴的区块开发行业中。区块技术处于初期阶段,然而这种颠覆性技术已经成功地风靡全球,并且最近经历了一场与众不同的繁荣。由于许多资金充足的项目现在急于建立区块网络并在其上部署分...

    2shou 评论0 收藏0
  • 以太坊将成为新互联网的支柱

    ...?Loom Network正在以太坊上构建我们的第2层,而不是其他区块平台——这就是原因。 每个月都有其他的公司发布白皮书,声称已经解决了以太坊所面临的可扩展性问题。这些新的区块声称比以太坊更好,更快,更智能——他...

    liuhh 评论0 收藏0
  • Java开发区块的三大sdk库

    如果你想将区块合并一个Java项目中,现在我们来看看就是这个细分领域中三个最大的OSS玩家。 好的伙计们,我们都听说过比特币,以太坊或其他加密货币,其中有一些时髦的名字围绕着我们常见的新闻,但我们作为Java...

    iKcamp 评论0 收藏0
  • 以太坊、EOS和Hyperledger等不同区块的比较

    不同的区块智能合约和区块技术现在风靡一时。越来越多的人出于某种原因试图进入这个神奇的世界。如果你是这项技术的新手并正在寻找基于区块开发平台的快速入门,那么本指南非常适合你。我们将重点关注和...

    harriszh 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<