(文章來源:CDA數據分析師(cdacdacda),轉載需授權,個人微信:w25092205)

作者 Gam本文為CDA志願者投稿文章,轉載需授權

關於區塊鏈的技能掌握,提到最多的就是Go語言和C++、Java,但是很多人產生了歧義,認為只有這幾種語言纔可以,CDA數據分析研究院通過調查發現,實際並不是這樣的。

BOSS直聘研究院發現,超過80%的區塊鏈相關職位對求職者的技能要求在3項及以上,技術類人才除了需掌 握常用開發語言外(C++,Java,Go),還需要對密碼學、共識演算法、超級賬本、智能合約等有足夠瞭解。

Go語言Go語言(Golang)是谷歌2009年推出的一種全新的編程語言,可以在不損失應用程序性能的情況下降低代碼的複雜性。谷歌首席軟體工程師羅布派克(Rob Pike)說:「我們之所以開發Go,是因為過去10多年間軟體開發的難度令人沮喪。」除比特幣是由C++開發以外,目前最主流坊的客戶端均有go語言開發,足以可見Go語言在整個區塊鏈行業的地位。

C++

C++ 是一種中級語言,它是由 Bjarne Stroustrup 於 1979 年在貝爾實驗室開始設計開發的。C++ 進一步擴充和完善了 C 語言,是一種面向對象的程序設計語言。C++ 可運行於多種平臺上,如 Windows、MAC 操作系統以及 UNIX 的各種版本。C++是一種使用十分廣泛的計算機程序設計語言。它是一種通用程序設計語言,支持多重編程模式,例如過程化程序設計、數據抽象、面向對象程序設計、泛型程序設計和設計模式等。

大多數的區塊鏈企業都選擇用C++編寫區塊鏈的底層,最著名的有比特幣、ripple等,主要體現的是強計算性。

Java

Java由詹姆斯·高斯林等人於1990年代初開發,是一種廣泛使用的計算機編程語言,擁有跨平臺、面向對象、泛型編程的特性,廣泛應用於企業級Web應用開發和移動應用開發。Java不同於一般的編譯語言或解釋型語言。它首先將源代碼編譯成位元組碼,然後依賴各種不同平臺上的虛擬機來解釋執行位元組碼,從而實現了「一次編寫,到處運行」的跨平臺特性。而區塊鏈項目的開發,對Java有著明顯的依賴性。

Python

Python,是一種廣泛使用的高級編程語言,屬於通用型編程語言,由吉多·範羅蘇姆 創造,第一版發佈於 1991 年。作為一種解釋型語言,Python 的設計哲學強調代碼的可讀性和簡潔的語法(尤其是使用空格縮進劃分代碼塊,而非使用大括弧或者關鍵詞)。相比於 C++ 或 Java,Python 讓開發者能夠用更少的代碼表達想法。不管是小型還是大型程序,該語言都試圖讓程序的結構清晰明瞭。而在區塊鏈項目中,bitcoin庫是Python特色,從入門角度相比C、CPP等語言具有更強的代入感。而當前以太坊(Ethereum)的Python實現也成為主流之一。

系統架構

系統架構師(System Architect,簡稱SA或SAr),是在信息系統研發中,負責依據需求來確定主要的技術選擇、設計系統的主體框架結構,並負責搭建實施的人。

他們(與系統分析師共同)確立系統的主體架構和實現方向,並負責指導軟體工程師等開發人員的編碼開發工作。這在區塊鏈行業明顯是不可或缺的。

以太坊

以太坊(Ethereum)首次在2013至2014年間由程序員Vitalik Buterin,受比特幣啟發後提出,大意為「下一代加密貨幣與去中心化應用平臺」。他是一個開源的有智能合約功能的公共區塊鏈平臺。通過其專用加密貨幣以太幣(Ether,又稱「以太幣」)提供去中心化的虛擬機(稱為「以太虛擬機」Ethereum Virtual Machine)來處理點對點合約。以太坊具有四種專用語言: Serpent(受 Python啟發)、 Solidity(受 Javascript啟發)、Mutan(受Go啟發)和LLL(受Lisp啟發),都是為面向合約編程而從底層開始設計的語言。

Linux

Linux,通常被認為是一套操作系統,實際上它是一系列 Linux內核基礎上開發的操作系統的總稱。日常所見比較多的 Ubuntu、企業常用的 centos其實都是 Linux系統,包括我國自己的中標麒麟系統其實也是基於 Linux內核搞出來的,都可以視為 Linux系統大家族的成員。2015年Linux基金髮起推進區塊鏈數字技術和交易驗證的開源項目。

hyperledger

超級賬本(Hyperledger)是linux基金會下的眾多項目中的一個。是由IBM、因特爾,還有金融公司,GP摩根以及其他聯合機構於2015年提出來的區塊鏈項目。超級賬本主要包括4個框架項目:Sawtooth、Iroha、Fabric、Burrow。其中廣為人知的是Fabric。

JavaScript

JavaScript,一種高級編程語言,通過解釋執行,是一門動態類型,面向對象(基於原型)的解釋型語言。JavaScript是一種可以被瀏覽器解析的解釋型腳本語言。也就是說,作為腳本語言的JavaScript不需要編譯過程,就可以直接執行。例如lisk就用的純JavaScript來編寫,以及ASCH等。

Node.js

Node.js 教程簡單的說Node.js 就是運行在服務端的JavaScript。 Node.js 是一個基於Chrome JavaScript 運行時建立的一個平臺。Nodejs平臺強大的網路編程能力,對區塊鏈的影響也是不可估量的。不管是什麼語言,區塊鏈技術開發其實不需要掌握某種新的技術,不過是在現有技術的前提下,在新的邏輯框架中實現新功能。但是並不是說一個擁有10年經驗的高級技術專家,就一定能在區塊鏈開發中成為佼佼者。區塊鏈技術開發需要的是既有紮實的技術,還能有區塊鏈的思維和實際應用經驗,這才真正是企業需求的人才,區塊鏈開發人員前進的方向。

推薦閱讀:

相關文章