Go語(yǔ)言
創(chuàng)新互聯(lián)公司主要企業(yè)基礎(chǔ)官網(wǎng)建設(shè),電商平臺(tái)建設(shè),移動(dòng)手機(jī)平臺(tái),微信小程序開(kāi)發(fā)等一系列專(zhuān)為中小企業(yè)按需設(shè)計(jì)網(wǎng)站產(chǎn)品體系;應(yīng)對(duì)中小企業(yè)在互聯(lián)網(wǎng)運(yùn)營(yíng)的各種問(wèn)題,為中小企業(yè)在互聯(lián)網(wǎng)的運(yùn)營(yíng)中保駕護(hù)航。
Go語(yǔ)言(Golang)是谷歌2009年推出的一種全新的編程語(yǔ)言,可以在不損失應(yīng)用程序性能的情況下降低代碼的復(fù)雜性。谷歌首席軟件工程師羅布派克(Rob Pike)說(shuō):“我們之所以開(kāi)發(fā)Go,是因?yàn)檫^(guò)去10多年間軟件開(kāi)發(fā)的難度令人沮喪?!?/p>
除比特幣是由C++開(kāi)發(fā)以外,目前最主流坊的客戶(hù)端均有g(shù)o語(yǔ)言開(kāi)發(fā),足以可見(jiàn)Go語(yǔ)言在整個(gè)區(qū)塊鏈行業(yè)的地位。
C++
C++ 進(jìn)一步擴(kuò)充和完善了 C 語(yǔ)言,是一種面向?qū)ο蟮某绦蛟O(shè)計(jì)語(yǔ)言。C++ 可運(yùn)行于多種平臺(tái)上,如 Windows、MAC 操作系統(tǒng)以及 UNIX 的各種版本。C++是一種使用十分廣泛的計(jì)算機(jī)程序設(shè)計(jì)語(yǔ)言。它是一種通用程序設(shè)計(jì)語(yǔ)言,支持多重編程模式,例如過(guò)程化程序設(shè)計(jì)、數(shù)據(jù)抽象、面向?qū)ο蟪绦蛟O(shè)計(jì)、泛型程序設(shè)計(jì)和設(shè)計(jì)模式等。
大多數(shù)的區(qū)塊鏈企業(yè)都選擇用C++編寫(xiě)區(qū)塊鏈的底層,最著名的有比特幣、ripple等,主要體現(xiàn)的是強(qiáng)計(jì)算性。
Java
Java不同于一般的編譯語(yǔ)言或解釋型語(yǔ)言。它首先將源代碼編譯成字節(jié)碼,然后依賴(lài)各種不同平臺(tái)上的虛擬機(jī)來(lái)解釋執(zhí)行字節(jié)碼,從而實(shí)現(xiàn)了“一次編寫(xiě),到處運(yùn)行”的跨平臺(tái)特性。而區(qū)塊鏈項(xiàng)目的開(kāi)發(fā),對(duì)Java有著明顯的依賴(lài)性。
其他的還有Python、系統(tǒng)架構(gòu)、以太坊、Linux、hyperledger、JavaScript等都會(huì)有涉及。
我并沒(méi)有什么編程的經(jīng)驗(yàn),覺(jué)得編程實(shí)在是太復(fù)雜了,不喜歡去研究太多,對(duì)這個(gè)也不怎么懂,只能說(shuō)自己是個(gè)半吊子,就是所掌握的知識(shí),也是東拼西湊的,朋友和我說(shuō)點(diǎn)兒,自己去書(shū)上看一點(diǎn)兒,只能說(shuō)根據(jù)自己的體驗(yàn)給出一些體會(huì)吧。
Rust的優(yōu)勢(shì)是:
1、Rust把安全、精確的內(nèi)存管理作為一切的中心放在首要的位置。
2、Rust同時(shí)擁有特別強(qiáng)的控制性和特別強(qiáng)的安全性。
3、Rust語(yǔ)言通過(guò): 優(yōu)秀的類(lèi)型系統(tǒng)設(shè)計(jì)、 嚴(yán)格的編譯器靜態(tài)審查、 配合程序員局部核對(duì)、加上少量的運(yùn)行時(shí)校驗(yàn),保障了內(nèi)存安全。
4、Rust的語(yǔ)言特別的復(fù)雜,導(dǎo)致學(xué)習(xí)曲線比較陡峭,對(duì)于初學(xué)者來(lái)說(shuō)難度較大。但學(xué)通之后將終生受益。
5、效率高,速度特別的快
6、 支持范型
7、 社區(qū)活躍度很高,更加的強(qiáng)調(diào)了社區(qū)的作用。
8、Rust 有更強(qiáng)的語(yǔ)義,更容易捕獲錯(cuò)誤的邏輯,編譯器直接檢查出你代碼中的不安全的部分
Rust的劣勢(shì)是:
1、 語(yǔ)言相對(duì)來(lái)說(shuō)比較復(fù)雜,對(duì)于新手來(lái)說(shuō),讓新手摸不著頭腦。
2、還不算太穩(wěn)定。
其實(shí)我覺(jué)得什么代碼啊編程啊這些東西還是比較適合理工的學(xué)生去研究,我一看腦袋就大,完全不明白在講什么。我大概了解的就是這些,語(yǔ)言的話(huà)大家可以多方面的去了解,也不是說(shuō)有缺點(diǎn)就是不好,看配置看個(gè)人吧,每個(gè)人習(xí)慣不一樣,也許有的人用不穩(wěn)定的還覺(jué)得挺好呢,有的人就喜歡比較完美的,在我看來(lái)編程這個(gè)東西真的是很復(fù)雜,會(huì)有很多的代碼,這些代碼弄得我自己頭都大了,有的時(shí)候還得去惡補(bǔ)一下。
@區(qū)塊鏈神吐槽:任何語(yǔ)言都可以,現(xiàn)在是數(shù)據(jù)上鏈,做不到內(nèi)容上鏈。
從目前的區(qū)塊鏈領(lǐng)域的人才需求來(lái)看,大致分為以下幾種:
1.搭建基于DLT技術(shù)的分布式賬本應(yīng)用,在DLT上實(shí)現(xiàn)客戶(hù)要求的業(yè)務(wù)需求。這類(lèi)領(lǐng)域目前比較出名的就是瑞波了。所以DLT是什么意思,看看瑞波在做什么你就懂了。
2.在已有的公鏈上開(kāi)發(fā)自己的應(yīng)用,目前大部分的公司都是在做這個(gè)。這一類(lèi)的特點(diǎn)也是門(mén)檻低、商業(yè)潛力大、風(fēng)險(xiǎn)也較低。
3.公司開(kāi)發(fā)自己的公鏈,這一類(lèi)的未來(lái)潛力最大,但是風(fēng)險(xiǎn)與技術(shù)難度也是最高。
4.區(qū)塊鏈生態(tài)基礎(chǔ)設(shè)施類(lèi)。比如說(shuō)移動(dòng)錢(qián)包、硬件冷錢(qián)包、交易平臺(tái)、區(qū)塊鏈內(nèi)容平臺(tái)等等,這一類(lèi)是目前商業(yè)利潤(rùn)最高的區(qū)塊鏈產(chǎn)業(yè),相對(duì)來(lái)說(shuō)門(mén)檻低、風(fēng)險(xiǎn)低,但是競(jìng)爭(zhēng)者非常多。
如果從技術(shù)切入,需要學(xué)習(xí)哪些語(yǔ)言與知識(shí)呢?
對(duì)于第一類(lèi)來(lái)說(shuō),go語(yǔ)言是必要的,因?yàn)镈LT基本以go語(yǔ)言為主,同時(shí)還需要掌握一定的應(yīng)用開(kāi)發(fā)的能力,因?yàn)榻桓督o客戶(hù)的必定是一個(gè)軟件而不是一堆命令行源程序。而對(duì)于第二類(lèi)來(lái)講,目前智能合約的主流還是以太坊智能合約的solidity語(yǔ)言,所以如果想要進(jìn)入第二類(lèi)的企業(yè),就需要以以太坊來(lái)入手。第三類(lèi)的公鏈開(kāi)發(fā),主流的是c++和go,但也有不少有名項(xiàng)目是以rust實(shí)現(xiàn)的,比如說(shuō):Facebook的libra、火幣公鏈的nervos等等。第四類(lèi)實(shí)際上則與區(qū)塊鏈技術(shù)的關(guān)系不算太大,因?yàn)橹T如交易平臺(tái)這樣的開(kāi)發(fā)并不需要區(qū)塊鏈技術(shù)。
而除了以上的技術(shù)硬實(shí)力以外,區(qū)塊鏈公司更偏愛(ài)的人才是“斜杠青年”,也就是同時(shí)掌握多領(lǐng)域知識(shí)的人才,這里主要也分為三大類(lèi):金融與區(qū)塊鏈、內(nèi)容運(yùn)營(yíng)與區(qū)塊鏈、社區(qū)運(yùn)營(yíng)與區(qū)塊鏈。而在這里面,第三類(lèi)人才又是最為稀少的,因?yàn)榇蠖鄶?shù)技術(shù)型人才都不善于溝通與交流,但是區(qū)塊鏈由于其分布式的特點(diǎn),又特別需要社區(qū)的共同發(fā)力來(lái)創(chuàng)建與維護(hù)一條鏈。
最后,很多人誤以為區(qū)塊鏈?zhǔn)莻€(gè)全新的行業(yè)、區(qū)塊鏈與傳統(tǒng)領(lǐng)域完全不搭,這其實(shí)是一個(gè)很大的誤區(qū),從上述所寫(xiě)來(lái)看,你也可以發(fā)現(xiàn)區(qū)塊鏈說(shuō)到底最后還是要解決現(xiàn)實(shí)中的實(shí)際需求,不同的只是解決需求的工具變了,所以不要以為只懂區(qū)塊鏈就可以大殺四方,選好要切入的需求領(lǐng)域,具備那個(gè)需求領(lǐng)域所需要的基本知識(shí)還是非常重要的。
區(qū)塊鏈的應(yīng)用領(lǐng)域有數(shù)字貨幣、通證、金融、防偽溯源、隱私保護(hù)、供應(yīng)鏈、娛樂(lè)等等,區(qū)塊鏈、比特幣的火爆,不少相關(guān)的top域名都被注冊(cè),對(duì)域名行業(yè)產(chǎn)生了比較大的影響。
1、服務(wù)器編程:以前你如果使用C或者C++做的那些事情,用Go來(lái)做很合適,例如處理日志、數(shù)據(jù)打包、虛擬機(jī)處理、文件系統(tǒng)等。
2、分布式系統(tǒng)、數(shù)據(jù)庫(kù)代理器、中間件:例如Etcd。
3、網(wǎng)絡(luò)編程:這一塊目前應(yīng)用最廣,包括Web應(yīng)用、API應(yīng)用、下載應(yīng)用,而且Go內(nèi)置的net/http包基本上把我們平常用到的網(wǎng)絡(luò)功能都實(shí)現(xiàn)了。
4、開(kāi)發(fā)云平臺(tái):目前國(guó)外很多云平臺(tái)在采用Go開(kāi)發(fā),我們所熟知的七牛云、華為云等等都有使用Go進(jìn)行開(kāi)發(fā)并且開(kāi)源的成型的產(chǎn)品。
5、區(qū)塊鏈:目前有一種說(shuō)法,技術(shù)從業(yè)人員把Go語(yǔ)言稱(chēng)作為區(qū)塊鏈行業(yè)的開(kāi)發(fā)語(yǔ)言。如果大家學(xué)習(xí)區(qū)塊鏈技術(shù)的話(huà),就會(huì)發(fā)現(xiàn)現(xiàn)在有很多很多的區(qū)塊鏈的系統(tǒng)和應(yīng)用都是采用Go進(jìn)行開(kāi)發(fā)的,比如ehtereum是目前知名度最大的公鏈,再比如fabric是目前最知名的聯(lián)盟鏈,兩者都有g(shù)o語(yǔ)言的版本,且go-ehtereum還是以太坊官方推薦的版本。
自1.0版發(fā)布以來(lái),go語(yǔ)言引起了眾多開(kāi)發(fā)者的關(guān)注,并得到了廣泛的應(yīng)用。go語(yǔ)言簡(jiǎn)單、高效、并發(fā)的特點(diǎn)吸引了許多傳統(tǒng)的語(yǔ)言開(kāi)發(fā)人員,其數(shù)量也在不斷增加。
使用 Go 語(yǔ)言開(kāi)發(fā)的開(kāi)源項(xiàng)目非常多。早期的 Go 語(yǔ)言開(kāi)源項(xiàng)目只是通過(guò) Go 語(yǔ)言與傳統(tǒng)項(xiàng)目進(jìn)行C語(yǔ)言庫(kù)綁定實(shí)現(xiàn),例如 Qt、Sqlite 等。
后期的很多項(xiàng)目都使用 Go 語(yǔ)言進(jìn)行重新原生實(shí)現(xiàn),這個(gè)過(guò)程相對(duì)于其他語(yǔ)言要簡(jiǎn)單一些,這也促成了大量使用 Go 語(yǔ)言原生開(kāi)發(fā)項(xiàng)目的出現(xiàn)。
任何一門(mén)計(jì)算機(jī)語(yǔ)言,都能在特定某個(gè)領(lǐng)域的應(yīng)用中,實(shí)現(xiàn)區(qū)塊鏈技術(shù);
具體使用哪一門(mén)語(yǔ)言,完全看我們相應(yīng)領(lǐng)域行業(yè)企業(yè)項(xiàng)目的技術(shù)要求,以及更關(guān)鍵的:跟已有信息系統(tǒng)的有效對(duì)接聯(lián)通。
區(qū)塊鏈具有自下而上生成記錄,生成兩方或多方合同類(lèi)記錄,加入第三方確認(rèn)機(jī)制,分布存儲(chǔ),……等特點(diǎn);
從而讓它相比集中式的存儲(chǔ)運(yùn)算而言,變得更為可信。
常見(jiàn)的總統(tǒng)投票,就非常適合以區(qū)塊鏈技術(shù)重新架構(gòu);采用區(qū)塊鏈技術(shù)的投票系統(tǒng),能夠避免哪一家技術(shù)公司、某一個(gè)關(guān)鍵技術(shù)人員,操縱選票統(tǒng)計(jì)結(jié)果的可能。
像我們的法院證據(jù),也特別適合采用區(qū)塊鏈技術(shù)重新架構(gòu)開(kāi)發(fā)。
其實(shí)像當(dāng)前我們各類(lèi)互聯(lián)網(wǎng)時(shí)代的“版權(quán)系統(tǒng)”,它們中一些就是采用區(qū)塊鏈技術(shù)架構(gòu)而來(lái),只不過(guò),目前我們的新聞出版局、專(zhuān)利局(或者更廣義地被稱(chēng)作“專(zhuān)家評(píng)委”),都尚未接入這些由互聯(lián)網(wǎng)公司創(chuàng)新而來(lái)的版權(quán)平臺(tái)。
我們耳熟能詳 的“法大大”(雖然名字不甚好聽(tīng)、甚至乍一聽(tīng)來(lái)有些讓人“摸不著頭腦”),它也其實(shí)正準(zhǔn)備采用最新的區(qū)塊鏈技術(shù)重新架構(gòu);采用區(qū)塊鏈技術(shù)的合同平臺(tái),因?yàn)樽兊酶涌尚牛膊拍芨阌诨ヂ?lián)網(wǎng)時(shí)代人們簽訂各類(lèi)商務(wù)合同。
還有像我們的“征信系統(tǒng)”,也非常適合以區(qū)塊鏈技術(shù)加以改造。能夠讓它更有說(shuō)服力,而不致于出現(xiàn)一家單位、乃至隨意某個(gè)關(guān)鍵技術(shù)人員,能隨意往其中添加“征信污點(diǎn)數(shù)據(jù)”的情況。
還有像我們的P2P貸款,如果能夠以區(qū)塊鏈技術(shù)重新架構(gòu)的話(huà),也能夠變得更加可信,而不致于出現(xiàn)違約、卷款跑路這樣的失信情況。