如何成為Java區(qū)塊鏈開發(fā)人員

最近這些天,區(qū)塊鏈是每個開發(fā)人員的談資。來自各個領(lǐng)域的許多軟件開發(fā)商現(xiàn)在正試圖進入?yún)^(qū)塊鏈市場。我們與Mobilunity的區(qū)塊鏈軟件開發(fā)人員Eugene Kyselev 討論了他是如何走出區(qū)塊鏈開發(fā)方面的第一步的,希望對大家有所幫助。

JAXenter:Eugene,請告訴我們您在區(qū)塊鏈開發(fā)方面的經(jīng)驗。你是怎么開始的?

Eugene Kyselev:說起來很平淡,一切都在正確的時間出現(xiàn),對我來說,區(qū)塊鏈開發(fā)是一個合乎邏輯的延續(xù)。我從JavaScript和其他框架開始,我想繼續(xù)朝這個方向發(fā)展。幾年前,隨著各種ICO和采礦趨勢的開始,我毫不猶豫地決定嘗試區(qū)塊鏈開發(fā)。

區(qū)塊鏈開發(fā)現(xiàn)在正在以光速發(fā)展。區(qū)塊鏈技術(shù)引起了政府和各國央行的注意;簡而言之,一切都表明區(qū)塊鏈前景光明。

JAXenter:你認為“區(qū)塊鏈時代”將持續(xù)多久?

Eugene Kyselev:很難說,這就像問“全球化時代將持續(xù)多久?”

我認為,只要對加密貨幣和其他區(qū)塊鏈解決方案的需求不斷增加,就需要持續(xù)一段時間。所有的一切,每件事物都會經(jīng)歷自己的發(fā)展,最終出現(xiàn)了加密貨幣和各種ICO,我很確定現(xiàn)在就是“區(qū)塊鏈時代”,區(qū)塊鏈技術(shù)還有許多其他重要的發(fā)現(xiàn)和創(chuàng)新應(yīng)用??梢詭碚麄€行業(yè)的新突破。

JAXenter:為什么要將技術(shù)專長轉(zhuǎn)變?yōu)閰^(qū)塊鏈開發(fā)?

Eugene Kyselev:沒有所謂的技術(shù)技能轉(zhuǎn)變這樣的東西。Blockchain使用常見的編程語言,如C++,Java,Python,Go。但是像Solidity這樣的新技術(shù)也會出現(xiàn)。Solidity是一種面向?qū)ο蟮木幊陶Z言,用于為以太坊區(qū)塊鏈平臺開發(fā)智能合約。另一項有前途的技術(shù)是Hyperledger,一種由開源技術(shù)組成的區(qū)塊鏈平臺。Hyperledger允許你創(chuàng)建分布式分類帳或你自己的區(qū)塊鏈框架。

JAXenter:許多開發(fā)人員都在問“你需要做些什么來成為區(qū)塊鏈或加密貨幣開發(fā)人員?”你會推薦他們怎么做?

Eugene Kyselev:憑著堅強的意志,你可以實現(xiàn)并學(xué)習(xí)一切。作為快速指南,我推薦IBM Blockchain 101課程。但對于初學(xué)者來說,你必須具備扎實的算法和數(shù)據(jù)結(jié)構(gòu)知識,最重要的是加密算法。如果你是區(qū)塊鏈工程師,那么深入了解Java/C或Python/Go也是必須的。

如果你專注于開發(fā)智能合約,則需要具備JavaScript開發(fā)經(jīng)驗,下一步是掌握Solidity。

JAXenter:你如何開始Java編寫區(qū)塊鏈程序?

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:告訴我們更多關(guān)于Hyperledger,R3 DLT和Solidity的信息。

Eugene Kyselev:讓我們從Hyperledger開始吧。如上所述,它是區(qū)塊鏈應(yīng)用程序的開源平臺(中心)??偟膩碚f,Hyperledger不支持比特幣和其他加密貨幣。Hyperledger是一組旨在促進區(qū)塊鏈應(yīng)用程序開發(fā)的項目。

自從互聯(lián)網(wǎng)出現(xiàn)以來,沒有一種技術(shù)像這項技術(shù)那樣具有前景和開創(chuàng)性?;ヂ?lián)網(wǎng)和區(qū)塊鏈可以一起使用,以創(chuàng)建新一代的交易性應(yīng)用程序,在業(yè)務(wù)流程的核心創(chuàng)建信任,建立問責(zé)制和透明度。

R3 DLT不是一項技術(shù),而是一個區(qū)塊鏈聯(lián)盟,其中包括100多家銀行,金融機構(gòu),監(jiān)管機構(gòu),專業(yè)機構(gòu),服務(wù)公司和技術(shù)公司。

目標是利用該平臺探索區(qū)塊鏈技術(shù)的可能性,區(qū)域鏈技術(shù)被認為是創(chuàng)新的,同時總結(jié)已建立的參與者的想法和數(shù)據(jù),并使國際支付更快,更可靠。

Solidity是一種強烈的面向JavaScript的語言,旨在開發(fā)在以太坊虛擬機(EVM)中運行的智能合約。由于Solidity具有類似JavaScript的語法,因此我可以輕松快速掌握該語言。主要缺點是尚未實現(xiàn)該語言的完整版本。因此,它仍然具有相當(dāng)有限的功能集,并且受到許多錯誤的困擾。

JAXenter:現(xiàn)在有很多關(guān)于區(qū)塊鏈的炒作。這項技術(shù)可以解決哪些問題?

Eugene Kyselev

至少會對下面這些問題有很大的幫助:

1.確保銀行存款的安全

每年,銀行都會因欺詐而損失巨額資金。區(qū)塊鏈具有幾乎無可挑剔的安全性,可以幫助他們解決這個問題。轉(zhuǎn)換到區(qū)塊鏈錢包的銀行客戶由唯一標識號而不是名稱標識。此外,他們使用私鑰來獲取資金。在他們的幫助下,只有他們的所有者可以處置資金——即使銀行也無法獲得這些資金。這些安全措施確保了比特幣和其他加密貨幣的安全性,以便他們可以輕松保護存款。

區(qū)塊鏈上的云存儲將能夠更好地抵御黑客攻擊

云存儲公司使用集中式服務(wù)器來存儲數(shù)據(jù)。出于這個原因,黑客可以從中竊取信息的風(fēng)險增加——通過訪問服務(wù)器,黑客自動滲透到整個網(wǎng)絡(luò)。一個區(qū)塊鏈上的云存儲可以分散地保護你的數(shù)據(jù),并且它們的節(jié)點也會斷開連接。因此,它們不易受到攻擊,甚至攻擊節(jié)點也不會破壞整個網(wǎng)絡(luò)。

2.貨物運輸速度更快

在物流方面,需要正確,快速地組織貨物運輸。關(guān)鍵是能夠在整個供應(yīng)鏈中跟蹤貨物。借助區(qū)塊鏈技術(shù),這一過程將變得更加安全和透明。此外,在去中心化的連續(xù)的記錄將減少人類的作用和延遲的可能性。

3.選舉舞弊

選舉欺詐,偽造簽名和舉行會議,而不通知所有成員是在公司治理中最普遍的問題。所有這些問題都通過區(qū)塊鏈技術(shù)的整合得到部分解決。例如,它可以跟蹤和計算投票,從而消除任何人的聲音不會被計算或偽造的。相反,每個投票參與者將收到一個唯一的密鑰來做出決定。

謝謝!

======================================================================

分享一些以太坊、EOS、比特幣等區(qū)塊鏈相關(guān)的交互式在線編程實戰(zhàn)教程:

java以太坊開發(fā)教程,主要是針對java和android程序員進行區(qū)塊鏈以太坊開發(fā)的web3j詳解。

  • java比特幣開發(fā)教程,本課程面向初學(xué)者,內(nèi)容即涵蓋比特幣的核心概念,例如區(qū)塊鏈存儲、去中心化共識機制、密鑰與腳本、交易與UTXO等,同時也詳細講解如何在Java代碼中集成比特幣支持功能,例如創(chuàng)建地址、管理錢包、構(gòu)造裸交易等,是Java工程師不可多得的比特幣開發(fā)學(xué)習(xí)課程。
  • python以太坊,主要是針對python工程師使用web3.py進行區(qū)塊鏈以太坊開發(fā)的詳解。
  • php以太坊,主要是介紹使用php進行智能合約開發(fā)交互,進行賬號創(chuàng)建、交易、轉(zhuǎn)賬、代幣開發(fā)以及過濾器和交易等內(nèi)容。
  • 以太坊入門教程,主要介紹智能合約與dapp應(yīng)用開發(fā),適合入門。
  • 以太坊開發(fā)進階教程,主要是介紹使用node.js、mongodb、區(qū)塊鏈、ipfs實現(xiàn)去中心化電商DApp實戰(zhàn),適合進階。
  • C#以太坊,主要講解如何使用C#開發(fā)基于.Net的以太坊應(yīng)用,包括賬戶管理、狀態(tài)與交易、智能合約開發(fā)與交互、過濾器和交易等。
  • EOS教程,本課程幫助你快速入門EOS區(qū)塊鏈去中心化應(yīng)用的開發(fā),內(nèi)容涵蓋EOS工具鏈、賬戶與錢包、發(fā)行代幣、智能合約開發(fā)與部署、使用代碼與智能合約交互等核心知識點,最后綜合運用各知識點完成一個便簽DApp的開發(fā)。
  • php比特幣開發(fā)教程,本課程面向初學(xué)者,內(nèi)容即涵蓋比特幣的核心概念,例如區(qū)塊鏈存儲、去中心化共識機制、密鑰與腳本、交易與UTXO等,同時也詳細講解如何在Php代碼中集成比特幣支持功能,例如創(chuàng)建地址、管理錢包、構(gòu)造裸交易等,是Php工程師不可多得的比特幣開發(fā)學(xué)習(xí)課程。

匯智網(wǎng)原創(chuàng)翻譯,轉(zhuǎn)載請標明出處。這里是原文

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容