從第一行程式碼到發鏈只需一小時,用這款新工具,你也能做到
古羅馬,“乘法”是隻有御用數學家才能理解的深奧概念——而當阿拉伯數字出現,孩童亦能於紙上演算。
新工具不僅提升效率,還可為前人所不能。作為活躍開發領域之一,區塊鏈新技術、工具、平臺、語言與框架層出不窮,然而面對紛繁複雜的選擇,開發者難以面面俱到。《區塊鏈大本營 | 新工具》欄目每週將為開發者介紹最值得關注的新技術與工具。未來,我們還將多角度、系統地為專案選型提供指南。
“這是應對區塊鏈極繁主義的最好手段”
——Parity創始人Gavin Wood如是說,他也是Ethereum創始人和Solidity設計者之一。
上週,Gavin在柏林Web3峰會現場演示了一種新框架——Substrate。他使用一臺剛啟封的Macbook Pro,從編寫第一行程式碼,到釋出區塊鏈,用時不足60分鐘。
最大自由,最少代價
Parity的明星專案Polkadot就是基於Substrate構建的——前者是一種由多條鏈,異構組成的區塊鏈集合,其目的是成為不同區塊鏈間的媒介。Substrate先前的主要目的是讓開發者能在Polkadot上快速啟動平行鏈,不過Substrate框架本身還具備釋出獨立區塊鏈的能力,這讓它成為獨立於Polkadot的專案,不依賴後者的開發進度,本月晚些時候,Substrate 1.0-beta將會公開發布。
與Express或其他Web應用框架類比,Substrate是用來構建分散式或去中心化系統的,如加密貨幣專案或訊息匯流排系統。就如大多數Web應用程式不需要重新實現HTTP一樣,Gavin Wood認為,
高通用技術棧
Substrate在設計時,考慮了支援大多數現有和未來可能出現的區塊鏈應用場景。其技術棧主要由以下幾個具備高通用和擴充套件潛能的部分組成。
1. 對區塊鏈應用架構來說,State Transition Function(STF)代表其核心商業邏輯,STF的功能集合、有何種限制,決定了區塊鏈的應用場景。Substrate執行時採用WebAssembly的一個子集,具有跨平臺和輕量的特點。在1.0-beta版本中,開發者可以使用純Rust、C++和C編寫STF;通過WebAssembly支援的其他語言,將在後續引入。
2. 網路部分基於Libp2p,開箱即用。對於需要其他網路訊息支援的區塊鏈應用,未來版本的Substrate計劃引入一個網路拓撲API。
3. 為了適應快速應用開發,Substrate支援包括Polkadot SHAFT(GRANDPA)在內的多種共識演算法。密碼學資料庫後端及塊格式,都可以定製或重寫。在1.0-beta版本中,將包含以下幾類共識演算法,當然開發者還可以通過Substrate API設計自己的共識演算法。
Rhododendron
SHAFT/GRANDPA
Aurand
Ouroboros
PoW
Parachain(PoV)
Substrate提供的其他工具還包括:
Polkadot連線
可以熱替換和插入的共識機制
可以熱升級和插入的STF
Pub/Sub WebSocket JSON-RPC
輕量客戶端
交易佇列
安全網路
JavaScript實現
Substrate執行時模組庫(SRML)
因為具備一系列鏈上熱升級機制,無論修改共識演算法還是升級STF,開發者都無需硬分叉。作為例證,今年7月17日,Polkadot的“Krumme Lanke”測試網路進行過公開演示,至今依然正常執行。
建立Substrate執行時模組庫(SRML)的目的,是為了幫助開發者更迅速地釋出區塊鏈。開發者只需要將一組模組集合,便能實現相應的網路、共識、輕客戶端或者其他需要的功能,新功能可以通過建立新模組實現。
SRML之外,Substrate在設計中還額外引入了兩層邏輯:
1. 可通過JSON配置的通用區塊鏈節點,用於執行其執行時;
2. 一個精簡的區塊鏈核心引擎,用於處理共識、塊生成、網路、資料庫等功能。
此外,企業和金融敏感使用者關注的高階隱私和許可權管理,也能輕鬆加入並通過Substrate進行控制,而無需與Polkadot產生瓜葛,並通過橋接或成為原生Parachain的方式升級。
注:Substrate專案地址為https://github.com/paritytech/substrate
--【完】--
公眾號又又又改版了,為了不錯過第一手推送訊息,建議你按照圖片的提示,將【區塊鏈大本營】設為星標(安卓使用者設為“置頂”),標星看大圖更爽喲!
推薦閱讀
大力戳↑↑↑ 加入區塊鏈大本營讀者⑦號群
(內容轉載請聯絡微信:CSDN_qkldby)
(商務合作請聯絡微信:fengyan-1101)
免費公開課|掃碼即可報名
想學習超級賬本的同學千萬不要錯過!開課前報名可免費觀看直播和回放,課程結束後只有會員才可免費觀看回放哦