最近區(qū)塊鏈技術(shù)大火,如何快速學(xué)習(xí)?
網(wǎng)友解答: 談?wù)剛€人對區(qū)塊鏈技術(shù)學(xué)習(xí)的一些路線看法:前言首先明確一點,區(qū)塊鏈技術(shù)隨比特幣誕生,并支撐著比特幣的運行,所以在理解區(qū)塊鏈技術(shù)之前,應(yīng)了解比特幣。基礎(chǔ)入門個人學(xué)習(xí)需要了解的知識
談?wù)剛€人對區(qū)塊鏈技術(shù)學(xué)習(xí)的一些路線看法:
前言首先明確一點,區(qū)塊鏈技術(shù)隨比特幣誕生,并支撐著比特幣的運行,所以在理解區(qū)塊鏈技術(shù)之前,應(yīng)了解比特幣。
基礎(chǔ)入門個人學(xué)習(xí)需要了解的知識點分以下幾個步驟:
比特幣是什么,對比特幣的理解。比特幣的記賬原理,主要是為了了解比特幣的結(jié)構(gòu)。理解比特幣所有權(quán)以及隱私問題,主要理解一些概率,如地址私鑰、非對稱加密應(yīng)用。比特幣的挖礦原力,理解挖礦工作量證明。比特幣共識機制的理解。知識點拓展學(xué)習(xí),加深自己對比特幣的理解:什么是拜占庭將軍問題。進階階段進階階段主要是理解分布式網(wǎng)絡(luò)、交易驗證,有以下幾點內(nèi)容:
分析比特幣網(wǎng)絡(luò):一種去中心化,點對點的網(wǎng)絡(luò)架構(gòu)。比特幣區(qū)塊結(jié)構(gòu)Merkle樹及簡單支付驗證分析。比特幣腳本及交易分析,這個是智能合約的雛形,可以重點研究一下。技術(shù)實踐通過上面這些知識點,大家應(yīng)該可以理解區(qū)塊鏈了,現(xiàn)在還缺乏一個實現(xiàn)的應(yīng)用案例,推薦理解以太坊【以太坊是建立在區(qū)塊鏈技術(shù)上的一個去中心化的應(yīng)用平臺】。
了解以太坊需要學(xué)習(xí)以下知識:
以太坊開發(fā)入門;智能合約開發(fā)環(huán)境搭建及hello world合約;以太坊客戶端Geth命令用法;Geth控制臺使用實踐及Web3.js使用;介紹一些開源的區(qū)塊鏈技術(shù)以及資源鏈接:比特幣全球使用最廣泛,真正意義上的去中心化區(qū)塊鏈技術(shù)。
開源地址:https://github.com/bitcoin/bitcoin
以太坊圖靈完備的區(qū)塊鏈一站式開發(fā)平臺,采用多種編程語言實現(xiàn)協(xié)議,并利用Go語言編寫的默認(rèn)客戶端。
開源地址:https://github.com/ethereum
IBM HyperLedger fabric帶有可插入各種功能模塊架構(gòu)的區(qū)塊鏈實施方案,目的打造成一個由全社會來共同維護的一個超級賬本。
開源地址:https://github.com/hyperledger/fabric
比特股BitShare區(qū)塊鏈里程碑產(chǎn)品之一,是完整度最高,功能最豐富,性能最強大的區(qū)塊鏈產(chǎn)品之一;核心技術(shù)結(jié)構(gòu)采用C++語言編寫。
開源地址:https://github.com/bitshares
公證通Factom利用比特幣的區(qū)塊鏈技術(shù)革新商業(yè)社會和政府部門的數(shù)據(jù)管理的數(shù)據(jù)記錄方式,被理解為不可撤銷的發(fā)布系統(tǒng)。
開源地址:https://github.com/FactomProject/FactomCode
瑞波Ripple世界上第一個開放式支付網(wǎng)絡(luò),是基于區(qū)塊鏈的點對點全球支付網(wǎng)絡(luò)。
開源地址:https://github.com/ripple/rippled
未來幣NXT第二代去中心化虛擬貨幣,使用全新代碼編寫,非比特幣的山寨幣,技術(shù)架構(gòu)采用JAVA編寫。開源地址:https://bitbucket.org/JeanLucPicard/nxt/overview
網(wǎng)友解答:很多人和題主一樣都有這個想法,學(xué)習(xí)區(qū)塊鏈技術(shù),未來好就業(yè)。
但是很遺憾,區(qū)塊鏈技術(shù)真不是簡單的某項技術(shù)或某個語言,它是一系列的底層架構(gòu)和技術(shù)的組合。大致來說包含以下內(nèi)容:
分布式存儲
P2P網(wǎng)絡(luò)
加密技術(shù)
算法
數(shù)據(jù)結(jié)構(gòu)
共識機制
架構(gòu)設(shè)計
協(xié)議接口設(shè)計
編程語言(C++、Go、Python等)
如果題主要想學(xué)習(xí),我倒是可以大概推薦一個學(xué)習(xí)路線圖:
1. 學(xué)習(xí)一門編程語言,Python首推,其次Go,最后C++,雖然C++在區(qū)塊鏈應(yīng)用最廣,但是對非專業(yè)人士不太推薦,因為C++算比較難掌握的語言。Python可以說是萬能語言,所以首推。
2. 找一個相關(guān)的開源區(qū)塊鏈項目,閱讀技術(shù)文檔。先理解他的大概運行邏輯,不必了解深層次內(nèi)容。對項目和他用到的技術(shù)有一個概覽性的了解。
3. 針對性的學(xué)習(xí)用到的網(wǎng)絡(luò)編程、數(shù)據(jù)結(jié)構(gòu)、加密算法等
4. 學(xué)到這個時候我想99%的人都想放棄,至少里面有90%會放棄,覺得太難了,能堅持下來的10%不到,如果你真能堅持下來不斷的學(xué)習(xí)。
5. 對技術(shù)了解深入后,再回頭閱讀技術(shù)文檔,再學(xué)習(xí)。
6. 如此循環(huán)學(xué)習(xí)三次以上,必有收獲。這個時間我想至少也需要半年時間。
最最重要的是堅持、堅持、堅持!