本文由公號“老雅痞”授權轉載。
盡管Web3的開發者生態系統在更大的網絡開發者生態系統中只占很小的比例,但它似乎在快速增長——因此,嘗試并確定Web3技術堆棧的組成部分很有意義。我們知道它包括用于去中心化的區塊鏈,以及作為身份形式的加密貨幣錢包。您可能還聽說過名稱華麗的分布式存儲解決方案,如星際文件系統(IPFS)。但是開發者還需要學習什么才能進入Web3的世界呢?另外,傳統的網絡技術如JavaScript,如何適應Web3環境呢?
到目前為止,我所遇到的關于Web3堆棧的最佳定義是由NaderDabit寫的,他是一家名為Edge&Node的Web3公司的開發者關系工程師。我第一次采訪Dabit是在2020年8月,當時他在亞馬遜網絡服務公司擔任無服務器專家。那時,他剛剛在O'ReillyMedia出版了一本名為《全棧無服務器:使用React、AWS和GraphQL的現代應用程序開發》的書。2021年4月,他將這些技能帶入了新生的Web3世界。他在Edge&Node的部分工作是幫助構建TheGraph,“一個用于用GraphQL索引和查詢區塊鏈數據的Web3協議。”
國內首家區塊鏈+WEB3創投聯盟成立:金色財經報道,上海金融信息行業協會、上海金融數據港、清華大學全球私募股權研究院、InnoSpace、泰和泰律師事務所等機構宣布共同發起成立了國內首家區塊鏈+WEB3創投聯盟,將在行業指導、孵化與創投服務、科創風險股權投資、行業咨詢、創業空間、法律等方面,為投資者和創業者提供一個一站式、全方位區塊鏈+WEB3創業服務、合作共贏的平臺,打造一個安全高效的區塊鏈+WEB3生態圈,促進形成完整的區塊鏈與WEB3產業鏈和成熟健康的市場。該聯盟發起方之一上海金融數據港還宣布將啟動金融數據港科技創新中心,中心將設有展示中心、培訓中心、孵化加速器和大企業創新中心。(新浪香港)[2023/7/8 22:25:28]
我聯系了Dabit,問他做Web3開發人員與他以前在web2.0公司工作有什么不同。但首先,讓我們仔細看看他的Web3參考文章。他將Web3堆棧分類如下:
區塊鏈
區塊鏈開發環境
文件存儲
P2P數據庫
歐易Web3錢包支持通過Visa、Mastercard購買數字貨幣:金色財經報道,歐易 Web3 錢包已于 2023 年 2 月 21 日正式上線使用信用卡購買數字貨幣功能。現支持通過 Visa、Mastercard 信用卡/借記卡購買包括 BTC、ETH 等超過 50 種數字貨幣到錢包。功能已同步上線 iOS 和安卓手機應用。[2023/2/21 12:19:47]
API(索引和查詢)
身份
客戶端(框架和庫)
其他協議
正如他所指出的,這個堆棧與傳統的網絡架構“在許多方面完全不同”——區塊鏈和基于加密貨幣的身份是兩個最明顯的區別。Dabit還提醒說,“Web3工具、技術和生態系統不如Web2成熟。”
“從網絡基礎設施的角度來看,”Dabit告訴我,“主要的區別實際上是圍繞著我們所認為的‘后端’技術,但在Web3中,它們通常被稱為‘協議’。”
前端
讓我們先從簡單的部分開始。根據Dabit的說法,Web3的客戶端技術(框架和庫)本質上與Web2.0相同。在前端應用中大量使用JavaScript,而且就目前Web2.0的狀態而言,React是一個領先的JavaScript框架。Dabit指出:“絕大多數的Web3項目和例子都是由React構建的。”
中國香港前財政司司長:香港可通過Web3的參與來為全球社會服務:金色財經報道,中國香港前財政司司長曾俊華周三表示,虛擬經濟對香港很重要,鼓勵年輕一代積極主動通過Web3參與和技術采用。
曾俊華進一步闡述,他很欣賞Web3上的新商業模式,這是一個進行大規模、去中心化活動的平臺,是基于Web2的基礎基礎設施。他希望人們能夠從中受益。
然而,曾俊華也表示,由于加密貨幣的波動性,他仍然對加密貨幣持懷疑態度,建議公眾在金融方面應采取保守的態度,并補充說加密貨幣與NFT在本質上會有所不同。[2022/8/10 12:15:41]
Dabit向我解釋說:“除了實際的HTTP客戶端庫之外,前端技術并沒有太大區別。”因此,要通過HTTP協議與服務器通信,"你可以使用web3.js或ethers.js與rpc,或者使用graphql客戶端與TheGraph對話,而不是使用fetch或axios。"Web3.js和Ethers.js都是JavaScript庫,使開發者能夠與以太坊區塊鏈交互。
“此外,身份以及我們處理身份的方式在前端也是不同的,”Dabit說。“要讀取數據,你不需要了解用戶的任何信息,因為幾乎所有的數據都是公開的。但要寫入數據,通常需要連接到用戶的錢包。有幾種方法可以做到這一點。在桌面應用程序中,用戶通常會為他們的錢包添加一個瀏覽器擴展,它會自動為網絡注入一個全局窗口對象(例如Solana、Ethereum、Arweave)。或者在移動端,它將允許你在錢包應用程序中進行認證,并在簽署交易后重定向。”
跨鏈Web3移動端錢包Steakwallet宣布添加Yearn協議:3月12日消息,跨鏈 Web3 移動端錢包 Steakwallet 宣布添加 Yearn 協議,用戶在以太坊和 Fantom 鏈上的資產通過該錢包通過簡單操作即可參與 Yearn 協議。[2022/3/12 13:52:04]
如果你嘗試過購買加密貨幣或NFT,或嘗試過dapp(去中心化應用程序),那么你很有可能已經使用過MetaMask——它有一個瀏覽器擴展,可用于Chrome、Firefox和基于Chrome的瀏覽器,如Brave。MetaMask由ConsenSys所有,該公司有理由稱自己為“領先的以太坊軟件公司”。
ConsenSys還在Web3中擁有領先的IDE之一。Truffle是一個“使用以太坊虛擬機(EVM)的區塊鏈開發環境、測試框架和資產管道”。除此之外,它還提供了“智能合同生命周期管理”和“自動化合同測試”。
學習以太坊
現在我們來看看Web3堆棧更復雜的方面。到目前為止,大多數開發人員都熟悉區塊鏈的概念——基本上,它是一個分布式的數據分類賬本。但有許多不同類型的區塊鏈。最重要的兩種是比特幣和以太坊(并非巧合的是,與這些區塊鏈相關的加密貨幣是兩個市場領導者)。但比特幣的可編程性就像計算器一樣——正如以太坊研究員JustinDrake在播客《Web3Breakdowns》的一集中所說的那樣,以太坊是一個完全可編程的“圖靈完備”計算機。
Web3孵化器DAOsquare提前關閉RICE在Balancer上的LBP:Web3孵化器DAOsquare(RICE)發布公告稱,由于市場環境影響導致交易量未達預期,官方提前關閉了其代幣RICE在Balancer上的LBP。[2021/5/24 22:37:16]
以太坊的可編程特性導致了以區塊鏈為重點的網絡開發堆棧的新模式——也就是“Web3”。以太坊的原則之一是,理論上你可以在它上面構建任何東西。用web2.0的說法,它是一個網絡平臺。以太坊是最大的Web3平臺,它也兼容其他一些區塊鏈。因此,成為Web3開發人員的主要途徑就是學習如何使用以太坊。
你可能聽說過Solidity,一種用于以太坊區塊鏈的編程語言,有點類似于JavaScript。雖然這是事實,但Solidity僅用于為區塊鏈編寫“智能合約”——將數據和數據的任何指令放在區塊鏈上。
“在區塊鏈世界中,學習Solidity和EVM(或以太坊虛擬機)可能是作為區塊鏈開發人員入門的最佳選擇,”Dabit在他的文章中解釋道。“使用這個技能組合(和技術堆棧),你不僅可以為以太坊,還可以為其他以太坊二層、側鏈,甚至其他區塊鏈,如Avalanche、Fantom和Celo構建。”
然而,作為對Web2.0世界的另一種認可,Rust也正在成為智能合約開發人員的必備技能。Dabit將Solana、NEAR和Polkadot列為具有“一流的Rust支持”的三個區塊鏈示例。
Dabit告訴我:“我認為Solidity和Rust是智能合約開發中使用最多、需求量最大的語言。他補充說,由于經驗豐富的智能合約程序員相對較少,他們可以輕松地獲得“每年數十萬美元左右的薪水,我甚至看到過一些經驗最豐富的程序員年薪在100萬美元左右。”
如何存儲和查詢數據
Web3開發中最棘手的部分之一是數據的存儲和使用。雖然區塊鏈擅長成為不可變數據的“去信任”鏈,但它們在存儲和處理大量數據方面也非常低效——尤其是對于dapps。這就是IPFS、Arweave和Filecoin等文件存儲協議的用武之地。
Arweave是一個開源項目,它將自己描述為“一個允許你永久、可持續地存儲數據的協議,只需要預付一筆費用。”它本質上是一個點對點(P2P)網絡,但有自己的一套加密術語——它的采礦機制被稱為“"隨機訪問的簡潔證明",開發人員可以將應用程序部署到"permaweb"("一個建立在Arweave之上的永久的去中心化網絡”)。
更復雜的是,dapp開發者可以選擇使用“鏈外”解決方案,即數據存儲在主區塊鏈之外的其他地方。兩種常見的形式是“側鏈”(二級區塊鏈)和所謂的“第二層”(L2)解決方案,如比特幣閃電網絡和以太坊Plasma。更多關于如何在Web3中進行數據管理的信息,請查看數據API公司Fauna的ShashankGolla最近在TheNewStack上發表的文章。
至于如何在區塊鏈上索引和查詢數據,這是一個相對較新的開發領域。但如上所述,Dabit正在開發一種解決方案——由GraphQL驅動的TheGraph。除此之外,它還允許開發人員在應用程序中使用GraphQL直接從L1或L2鏈進行查詢。
去中心化:Web3開發者的窘境
基于Dabit所描述的Web3堆棧,很明顯,傳統的網絡編程技能——從JavaScript到Rust——將在Web3開發中為你提供良好的幫助。但你還必須學會如何使用智能合約編程區塊鏈,并適應加密文件存儲和鏈下解決方案的陌生世界。
從開發者的角度來看,Web3目前似乎處于過渡時期,試圖找到擺脫對Coinbase、OpenSea和Alchemy等中心化服務依賴的方法。但這樣做是所有復雜性的來源,因為真正的去中心化對于dapps來說是很難實現的。
我很好奇Web3堆棧在2022年以后會如何發展,因為它正在尋找方法來實現自己的去中心化宣傳。與此同時,如果你想了解更多,請查看NaderDabit的Web3開發者指南。去年10月,他在Next.jsConf上做了演講,他在其中解釋了堆棧。
今天東西方人們在瘋狂談論Web3.0,往往是將其視為對抗“監控資本主義”的“鐮刀錘子”,尤其是一群“加密黑幫”在美國國會率先打響了第一槍.
1900/1/1 0:00:00接觸區塊鏈這么些年,行業的風口總是變幻莫測。從ICO、STO、礦場到現在的NFT,圈內的朋友打個照面,總是戲謔圈內一天,圈外一年.
1900/1/1 0:00:00盡管我自認為是一名密碼學家,但我沒有覺得自己特別被"加密"(crypto)吸引。雖然我不認為我真的說過"離開我的草坪"(getoffmylawn)?這句話,但我更有可能點擊PepperidgeF.
1900/1/1 0:00:002022開年,周杰倫沒有發專輯,而是高調進軍元宇宙。周杰倫與好友共同創辦的潮牌PHANTACi發售NFT項目PhantaBear,單價0.26ETH,發售當天火爆非凡,1萬件幻影熊不到一小時售罄.
1900/1/1 0:00:00頭條 ▌國際清算銀行創新中心將于2022年開發DeFi產品1月25日消息,國際清算銀行計劃在2022年啟動新的CBDC和DeFi相關項目.
1900/1/1 0:00:001月22日消息,博茨瓦納政府將向該國議會提交一份“虛擬資產法案”,此舉可能使博茨瓦納成為非洲首批制定加密貨幣法律的國家之一.
1900/1/1 0:00:00