1. 程式人生 > >區塊鏈技術要用到什麼開發語言?

區塊鏈技術要用到什麼開發語言?

回顧2009年到如今,區塊鏈技術的火熱程度是逐年增加。各大行業巨頭也在瘋狂佈局,勢必要上演一場“群雄逐鹿”的商業大戰。那這場好戲什麼時候上演?有人說就在最近這兩三年,還有人甚至說就在今年,2018年區塊鏈將會出現井噴。當然,我們現在還無法做出準確的判斷,但是我們可以先做好充足的準備。那麼,問題又來了,區塊鏈技術到底要怎麼去弄?要用到哪些開發語言?在現在看來,這也許是很多從事區塊鏈程式設計師的心聲。下面整理了四種區塊鏈技術比較主要的開發言語,希望對大家有所幫助。

分享之前推薦ios開發高階進階交流學習群:319819749需要面試視訊資料和深入的開發者的歡迎加入,群內不定期分享乾貨

JAVA開發語言(未來幣)


定義:Java是一門面向物件程式語言,不僅吸收了C++語言的各種優點,還摒棄了C++裡難以理解的多繼承、指標等概念,因此Java語言具有功能強大和簡單易用兩個特徵。Java語言作為靜態面向物件程式語言的代表,極好地實現了面向物件理論,允許程式設計師以優雅的思維方式進行復雜的程式設計。


Java具有簡單性、面向物件、分散式、健壯性、安全性、平臺獨立與可移植性、多執行緒、動態性等特點 。Java可以編寫桌面應用程式、Web應用程式、分散式系統和嵌入式系統應用程式等。


C++開發語言(比特幣、公正通、瑞波ripple)


定義:C++是C語言的繼承,它既可以進行C語言的過程化程式設計,又可以進行以抽象資料型別為特點的基於物件的程式設計,還可以進行以繼承和多型為特點的面向物件的程式設計。C++擅長面向物件程式設計的同時,還可以進行基於過程的程式設計,因而C++就適應的問題規模而論,大小由之。


GO開發語言(以太坊、IBM)


定義:Go是一種新的語言,一種併發的、帶垃圾回收的、快速編譯的語言。它具有以下特點:


它可以在一臺計算機上用幾秒鐘的時間編譯一個大型的Go程式。Go為軟體構造提供了一種模型,它使依賴分析更加容易,且避免了大部分C風格include檔案與庫的開頭。Go是靜態型別的語言,它的型別系統沒有層級。因此使用者不需要在定義型別之間的關係上花費時間,這樣感覺起來比典型的面嚮物件語言更輕量級。Go完全是垃圾回收型的語言,併為併發執行與通訊提供了基本的支援。按照其設計,Go打算為多核機器上系統軟體的構造提供一種方法。


Go是一種編譯型語言,它結合瞭解釋型語言的遊刃有餘,動態型別語言的開發效率,以及靜態型別的安全性。它也打算成為現代的,支援網路與多核計算的語言。要滿足這些目標,需要解決一些語言上的問題:一個富有表達能力但輕量級的型別系統,併發與垃圾回收機制,嚴格的依賴規範等等。這些無法通過庫或工具解決好,因此Go也就應運而生了。


Solidity開發語言(以太坊)


定義:Solidity是一種智慧合約高階語言,執行在Ethereum虛擬機器(EVM)之上。它的語法接近於Javascript,是一種面向物件的語言。但作為一種真正意義上執行在網路上的去中心合約,它又有很多的不同。


特別說明:以太坊具有四種專用語言:Serpent(Python啟發),Solidity(javaScript啟發),Mutan(GO啟發)和LLL(Lisp啟發),都是為面向合約程式設計而從底層開始設計的語言。Solidity是以太坊的首選語言,正處於緊張開發中,它內建了Serpent的所有特性,但是語法類似於JavaScript,JavaScript是web開發的常用語言。