Forge SDK 是一套專門為開發(fā)者設(shè)計的開發(fā)組件,是 Forge 框架中不可或缺的一部分。開發(fā)者可以通過 Forge SDK 輕松構(gòu)建區(qū)塊鏈和去中心化應(yīng)用(DA
Forge SDK 是一套專門為開發(fā)者設(shè)計的開發(fā)組件,是 Forge 框架中不可或缺的一部分。開發(fā)者可以通過 Forge SDK 輕松構(gòu)建區(qū)塊鏈和去中心化應(yīng)用(DApps)。
ArcBlock 的服務(wù)平臺包括——
•OCAP:開放鏈訪問協(xié)議
•ABT 鏈網(wǎng):互聯(lián)互通、織鏈為網(wǎng)的區(qū)塊鏈網(wǎng)絡(luò)
•ABT 節(jié)點:一個易于使用的區(qū)塊鏈節(jié)點服務(wù)軟件
以及現(xiàn)在打造的 Forge 框架和 SDK,這些都是為了解決當(dāng)今區(qū)塊鏈開發(fā)的問題而構(gòu)建的易擴展、高性能、易用以及準產(chǎn)品化的工具。
為創(chuàng)建最符合開發(fā)者使用習(xí)慣的 Forge SDK,我們研究了前幾代區(qū)塊鏈產(chǎn)品,包括 Hyperledger、比特幣和以太坊,為當(dāng)今區(qū)塊鏈開發(fā)遭遇的平臺瓶頸、開發(fā)者在開發(fā)特定 DAPP 時遇到的問題找到了解決之道。從前人的經(jīng)驗總結(jié)中,我們創(chuàng)造了一個青出于藍而勝于藍的 Forge 框架。
正如 Ruby on Rails 之于 Web 應(yīng)用程序,我們相信 Forge 框架也將為區(qū)塊鏈開發(fā)打開新大門。Forge 易于使用,為開發(fā)者提供了構(gòu)建區(qū)塊鏈和 DAPP 所需的一切條件,并且隨著合作伙伴和工具迅速擴展, Forge 的生態(tài)系統(tǒng)將日益強大。
使用 Forge,開發(fā)這從以下幾方面可立即獲益:
•對比特幣和以太坊等異構(gòu)鏈的集成支持
•對 gRPC 和 GraphQL 的支持
•鏈上治理
•自動更新
•廣泛的語言支持,包括 javascript、python、erlang、swift、objective-c、iOS 和 Android
•無限可擴展的網(wǎng)絡(luò)
•用 Forge SDK 構(gòu)建的任何 DApp 或服務(wù)都與 ABT 鏈網(wǎng)原生兼容。
•內(nèi)置的去中心化身份
Forge SDK 是由一群經(jīng)驗豐富的區(qū)塊鏈開發(fā)先行者,總結(jié)自己踩過的坑,將心比心為更廣大的開發(fā)者設(shè)計的。大家也許對“什么是最好的語言”各持己見,但都有一個共同的目標:簡化區(qū)塊鏈開發(fā)的過程,讓開發(fā)者可以專注于應(yīng)用開發(fā)而不用擔(dān)心底層區(qū)塊鏈基礎(chǔ)建設(shè)。
快速啟動
要深層了解 Forge SDK 的工作原理,請轉(zhuǎn)到 “啟動“ 。
現(xiàn)在你離開啟 Forge 只有兩步之遙:
•首先,使用Forge CLI.啟動設(shè)備上的節(jié)點。此步驟啟動一個完整的節(jié)點,在此節(jié)點之上可以構(gòu)建應(yīng)用邏輯。
•然后,選擇您熟悉的 SDK 。目前,F(xiàn)orge SDK 提供了 Javascript SDK, Python SDK和 Java SDK。更多語言的支持正在完善中。
完成了!現(xiàn)在,你有了一個正在運行的節(jié)點和一組可以使用的工具?,F(xiàn)在,是時候創(chuàng)建一個錢包并發(fā)起一項交易邁出第一步了。
啟動概念
盡管 Forge 已經(jīng)很容易使用了,我們還是希望能進一步降低大家的學(xué)習(xí)成本。以下是我們挑選出來的關(guān)鍵概念,先理解這些概念對使用 Forge 能起到事半功倍的效果。
賬戶和錢包
要在剛啟動的節(jié)點上發(fā)起一項交易,首先需要創(chuàng)建一個帳戶。每個帳戶都有一個唯一的地址來標識不同的用戶,并且每個用戶實際上可以擁有具有不同地址的無限數(shù)量的帳戶。錢包是用戶帳戶憑證的容器,包括唯一地址、密鑰(SK)和公鑰(PK)。
開始使用 Forge 上的帳戶和錢包:https://docs.arcblock.io/forge/latest/intro/#quick-start
交易
交易是可以在 Forge SDK 構(gòu)建的鏈上發(fā)生的最小活動單位。在 ABT 鏈網(wǎng)上運行的所有活動都可以解釋為不同交易的排列組合。
用“交易”來描述鏈上活動這件事,可以追溯到比特幣。在中本聰最初的白皮書《比特幣:一種點對點電子現(xiàn)金系統(tǒng)》中,交易是指通過對哈希值簽名來轉(zhuǎn)移貨幣,以便其他方能夠驗證該交易的真實性和有效性。
使用 Forge SDK,一項交易包含的信息比貨幣多得多。根據(jù)交易的類型,每項交易都具有不同的功能。
所有由活動組成的交易都需要由現(xiàn)有賬戶簽署和發(fā)送。如果人們想在 Forge 上做點什么,他們必須經(jīng)歷發(fā)送交易的過程,這就是 Forge 框架如何保持各種活動痕跡的秘密。
了解有關(guān) Forge 交易的更多信息,請訪問:https://docs.arcblock.io/forge/latest/txs/#categories
Forge 的關(guān)鍵技術(shù)
Forge 旨在讓開發(fā)者工作更輕松,解決實際問題。Forge 有許多集成的特性和優(yōu)點,其中最值得關(guān)注的兩個關(guān)鍵技術(shù)是 gRPC 和 GraphQL。
可在此處了解有關(guān) gRPC 和 graphQL 的更多信息:https://docs.arcblock.io/forge/latest/core/rpc.html#why-grpc.
gRPC
gRPC(Google Remote Procedure Calls)是一個最初在 Google 開發(fā)的開源遠程過程調(diào)用系統(tǒng)。它提供諸如身份驗證、雙向流和流控制、阻塞或非阻塞綁定以及取消和超時等功能。簡單來說,這個系統(tǒng)允許您在不同的位置連接服務(wù)。
gRPC 一個重要的特性是允許客戶端應(yīng)用直接調(diào)用不同機器上的服務(wù)器應(yīng)用的方法——這是去中心化應(yīng)用程序開發(fā)的一個關(guān)鍵特性。此外,gRPC 還帶來了其他有益于開發(fā)者的功能,與大多數(shù)區(qū)塊鏈平臺目前正在使用的傳統(tǒng) JSON RPC 調(diào)用相比,該系統(tǒng)更高效、更準確。
當(dāng)然,這就引出了一個問題——如果 gRPC 這么好用,為什么其他平臺很少使用呢?簡而言之,因為構(gòu)建 gRPC 通常需要一些額外的工作對數(shù)據(jù)編碼和解碼。好消息是,F(xiàn)orge SDK 實際上為您完成了所有這些工作。gRPC 是開發(fā)者的最佳選擇,使用 Forge,您只需將參數(shù)傳遞給每個 GRPC 調(diào)用,即可享受 GRPC 的所有好處,而無需擔(dān)心各種背后的麻煩——Forge SDK 已經(jīng)幫你搞定。
GraphQL
gRPC 很適合構(gòu)建后端服務(wù),GraphQL 則是前端/移動訪問的完美補充。如果您希望使用 Forge API 為移動或 Web 用戶提供服務(wù),那么 GraphQL 是滿足您需求的優(yōu)異解決方案。Forge 的所有組件都是可以自由組合替換的,允許開發(fā)者找到自己最得心應(yīng)手的方式。
盡管與 Facebook 被一同提起,但 GraphQL 是一種用于 API 的開放源代碼數(shù)據(jù)查詢和操作語言,也是一種使用現(xiàn)有數(shù)據(jù)完成查詢的運行時。它通過允許客戶定義所需數(shù)據(jù)的結(jié)構(gòu),并從服務(wù)器返回完全相同的數(shù)據(jù)結(jié)構(gòu),為開發(fā) Web API 提供了一種高效、強大和靈活的方法。
因此不會像 Restful,一次查詢返回過多的數(shù)據(jù)。從客戶端的角度來看,GraphQL API 更加強大和安全。
要在 Forge 上啟動您下一個區(qū)塊鏈項目,只需安裝 Forge 即可。(舒適 & Matt)