區(qū)塊鏈開發(fā)中經(jīng)常使用的編程語言有哪些
掃描二維碼
隨時(shí)隨地手機(jī)看文章
我們目前正處于一個(gè)新興行業(yè)——區(qū)塊鏈的發(fā)展中。區(qū)塊鏈技術(shù)在很大程度上還處于萌芽階段,然而,這種顛覆性的技術(shù)已經(jīng)成功地席卷了全球,并經(jīng)歷了近年來前所未有的繁榮。
許多資金充足的項(xiàng)目現(xiàn)在都渴望構(gòu)建自己的區(qū)塊鏈網(wǎng)絡(luò),并在其上部署分散式的應(yīng)用程序,因此缺乏有能力的區(qū)塊鏈開發(fā)人員。
隨著數(shù)十億美元的資金流入這一領(lǐng)域,區(qū)塊鏈開發(fā)商的薪酬和需求不斷上升,各項(xiàng)目競(jìng)相競(jìng)標(biāo),以吸引市場(chǎng)上剩下的最優(yōu)秀區(qū)塊鏈人才。
這種淘金熱可能會(huì)讓一些開發(fā)人員想知道,他們是否具備深入這個(gè)行業(yè)所需的條件,特別是在這個(gè)新行業(yè)中最受歡迎的編程語言是什么中。幾乎所有流行的編程語言都在區(qū)塊鏈行業(yè)中使用,但是,由于某些區(qū)塊鏈項(xiàng)目和應(yīng)用程序使用不同的語言,開發(fā)人員必須考慮他們希望進(jìn)行何種類型的開發(fā)。
下面是對(duì)不同語言和項(xiàng)目的簡(jiǎn)要介紹,這些語言和項(xiàng)目是那些希望深入了解這個(gè)行業(yè)的人的基本理解和基礎(chǔ)。
Solidity—一種新的簡(jiǎn)單的編程語言,在以太坊開發(fā)人員中很流行,因?yàn)樗情_發(fā)以太坊智能合約所使用的語言。Solidity是一種面向接觸的圖靈完備編程語言。
由于以太坊已經(jīng)在智能合約方面取得了領(lǐng)先地位,許多替代區(qū)塊鏈平臺(tái)正在確保它們是穩(wěn)定(或ERC-20)兼容的,因此允許智能合約輕松地從以太坊移植到它們的新區(qū)塊鏈網(wǎng)絡(luò)。
以太坊 ——從技術(shù)上講,以太坊的功能相當(dāng)于一臺(tái)以太坊虛擬機(jī)(EVM),它是一臺(tái)“世界計(jì)算機(jī)”,由多種語言組成,包括c++、Python、Ruby、Go和Java。JavaScript作為以太坊的主干,因?yàn)樗墓δ苁亲鳛槟_本執(zhí)行的運(yùn)行時(shí)環(huán)境。
Java——一種通用的編程語言,它是并發(fā)的、面向?qū)ο蟮?、它的設(shè)計(jì)方式使得Java很少依賴于實(shí)現(xiàn)。自1995年發(fā)布以來,Java已經(jīng)成為前3大編程語言之一,擁有900多萬開發(fā)人員。NEM的核心區(qū)塊鏈網(wǎng)絡(luò)完全是用Java編寫的(很快將是c++)。
c# ——一種oriented的語言,使開發(fā)人員能夠在NET Framework上運(yùn)行的健壯應(yīng)用程序,全世界至少有200萬開發(fā)人員。c#是在2000年開發(fā)的。從一開始,它就成為一種流行的編程語言,用于構(gòu)建強(qiáng)大的跨平臺(tái)代碼,這些代碼可以在Windows、Mac、Linux和Android等多個(gè)操作系統(tǒng)上運(yùn)行。用c#編寫的區(qū)塊鏈項(xiàng)目包括:
· 由微軟支持的區(qū)塊鏈即服務(wù)提供商statis允許企業(yè)構(gòu)建自己的私有區(qū)塊鏈系統(tǒng)。
· NEO是用c#編寫的,但是,它還支持各種編程語言,如Javascript、Java、Python和Go。
Javascript——通??s寫為JS,這是一種多范式語言,支持事件驅(qū)動(dòng)、函數(shù)式和命令式(包括oriented和基于原型的)編程風(fēng)格。它是世界上最流行的編程語言之一,全世界至少有970萬開發(fā)人員使用它。
· Lisk的側(cè)鏈開發(fā)工具包(SDK)是用JavaScript編寫的,允許開發(fā)人員在Lisk的區(qū)塊鏈平臺(tái)上構(gòu)建應(yīng)用程序。
SQL —— Structured Query Language或“Sequel”是IBM開發(fā)的一種編程語言,用于與存儲(chǔ)、查詢和操作數(shù)據(jù)的數(shù)據(jù)庫通信。目前估計(jì)有700萬SQL開發(fā)人員。流行的數(shù)據(jù)庫如MySQL、PostgreSQL、SQL Server、DB2、Oracle等都使用SQL開發(fā)應(yīng)用程序。一個(gè)包含SQL的區(qū)塊鏈項(xiàng)目是:
· Aergo——由Blocko在其專有的代幣堆棧技術(shù)下開發(fā)的企業(yè)級(jí)區(qū)塊鏈解決方案使用了SQL smart contract。Aergo鏈具有一個(gè)基于sql的智能合約平臺(tái),允許企業(yè)實(shí)體在商業(yè)業(yè)務(wù)環(huán)境中創(chuàng)建和執(zhí)行高級(jí)智能合約。
c++ ——一種通用的編程語言,估計(jì)有440萬開發(fā)人員,它最大的優(yōu)勢(shì)在于能夠擴(kuò)展資源密集型的應(yīng)用程序,使它們能夠順利運(yùn)行,因此它是一種非常流行的3D游戲編程語言。使用c++的區(qū)塊鏈項(xiàng)目包括:
· EOS - c++是EOS首選的主要編程語言,因?yàn)樗梢造`活地在區(qū)塊鏈上運(yùn)行廣泛的應(yīng)用程序。EOS還支持任何編譯成WebAssembly (WASM)的語言。
隨機(jī)事實(shí):比特幣核心的網(wǎng)絡(luò)是用c++編程的。
Golang是一種開放源碼的通用編程語言,它松散地基于C編程語言的語法,開發(fā)人員很容易學(xué)習(xí),測(cè)試人員也很容易理解。目前,估計(jì)有80多萬開發(fā)人員使用該聯(lián)盟網(wǎng)絡(luò)使用的Golang語言:
· HyperLedger Fabric-大多數(shù)鏈代碼(使用HyperLedger Fabric構(gòu)建的智能合約)是用Golang編寫的。他們還有一個(gè)用于開發(fā)區(qū)塊鏈應(yīng)用程序的Java SDK。
如果您對(duì)區(qū)塊鏈行業(yè)感興趣,希望本文為您提供了從何處開始以及進(jìn)一步深入研究的基本概述。毫無疑問,隨著技術(shù)的進(jìn)步和實(shí)際應(yīng)用用例的出現(xiàn),該行業(yè)將在未來十年左右的時(shí)間里繼續(xù)爆炸式增長(zhǎng)。