懂得開發部署知識,讓使用者小白成為BUIDL。
當你不會部署合約的時候,你可能不能 稱之為BUIDL。
每一個空投愛好者,都會以使用者的身分進入鍊和應用,但在鏈的角度來看,使用者是有一定層級界線的,其中,對鏈來說,應用開發者是價值最大的。
應用程式開發者開發的dApp可以吸引用戶使用,使用過程中會產生gas,開發者會在鏈上部署合約,會主動吸引用戶進行鏈操作,鏈本身的價值會無限增加。
因此,有開發能力或簡單的開發知識,是增加獲得空投機機會,或者更準確地說成為鏈上真正的建設者的更好途徑。
本文探討了一種喜歡體驗鏈操作的使用者所需的簡易開發知識。其中,並沒有涉及到搭建前端、搭建開發環境或SDK相應操作。本文旨在普及通用使用者進入新手的開發體驗理論期,如果想繼續研習其他深入知識,可以繼續學習。
區塊鏈不只是一個總帳本,而今天存在的所有公鏈的設計都是為了表層的應用生長。
針對理解鏈的開發知識,以及本身互聯網開發應用一致,在架構理解上,只是後端都變成了鏈,原本在資料庫中的資料狀態變成了鏈上的資料狀態。
互聯網的應用開發,首先需要購買雲端服務(更早的可能透過運算設備入網也可以作為伺服器來部署),假如,我們購入兩台伺服器,一台部署前端,一台部署後端,購買一個網站,把網站與前端開發的部分配置完畢,然後開發出後端來管理數據,網站的交互數據在使用的時候會進入後端,當前端用戶操作的時候需要獲取一個反饋數據再操作的時候,是在存取了資料庫中的資料狀態後執行的。
基於如此複雜的流程,在傳統應用裡,使用者基本上感受不到後端,但在區塊鏈上是可以明顯感受到前端後端的。
dApp的後端將網路應用程式開發使用的伺服器和資料庫,變成了鍊和鏈上的總狀態。
在開發的時候,是處於後端的鏈暴露出一個遠端呼叫介面rpc,所有開發者和應用程式都是透過這個介面去對鏈操作。
這也是為什麼在使用MetaMask去體驗不同的dApp的時候,要在dApp裡添加不同的網絡,在添加網絡時url就代表著rpc的接入點。
在其他的網路設計裡,還有一種給dApp再次升級的方法,如果一個鏈只用一個rpc,那麼需要大量互動時,在任務提交上鍊前只是訪問過程就會擁堵。
這時候如果有可能自建rpc的應用方就有更大的優勢,但目前在公鏈領域,以現在pos的設計,這樣操作的dApp並不多。
到這裡,我們基本上能摸清楚當我們和鏈進行開發動作互動的時候會需要一個錢包、一個rpc埠。
那拿到了入口之後,接下來是怎麼進行鏈上的操作。
以太坊被稱為世界計算機,其可以運行各類自動執行的智能合約,而這個過程,是通過向網絡中部署合約並被EVM執行而進行。
虛擬機VM一詞是雲端服務產業一定會說到的詞,我們可以把以太坊網路中的運算設備看成一個龐大的運算儲存區,也就是虛擬機,虛擬機讓智能合約有運行能力,可以讓任務指令完成執行。
那智慧合約就成了關鍵,體驗開發者最核心的環節就是智慧合約。
智慧合約的部署分為,第一寫程式碼,第二編譯,第三部署,部署完成後就可以直接呼叫合約功能。
以太坊有固定的工具,而這些工具已經極為簡易化,在了解整個流程後,只要仔細查看就可嘗試整個流程。
Remix、Hardhat、OpenZeppelin是目前最簡單開放的工具代表,而除了這些開源工具外,還有例如Thirdweb這一可以輔助開發、簡化部分流程的工具。
近期我們分別體驗了Berachain、Taiko、Shardeum等公鏈的測試網。可以從這幾個鏈的體驗過程來了解開發知識。
首先,我是一個普通用戶,我使用MetaMask操作與網路互動。第一步需要在MetaMask中添加測試網,並且獲取到測試網中的代幣,測試網代幣是從測試網水龍頭處領取,數量是有限的,在三個項目的官方文檔中都公示了領取過程,這三條鏈的測試代幣分別是Bera、ETH、SHM。
其中可以發現,Berachain和Shardeum都是L1,都使用自己的原生代幣,而Taiko是L2,存在的目標是拓展以太坊,所以使用ETH,並且,因為以太坊有公共測試網,所以Taiko也使用了以太坊本身的測試網進行了一些功能測試,如果想要體驗的用戶,需要分清楚最終落實在了那條鏈上。
當分別在三條鏈的水龍頭拿到了體驗代幣之後,接下來就是嘗試如何使用開發工具,把合約部署到鏈上。
所以接下來會有三步,找到合約,修改合約,在IDE中完成合約部署。
在三個專案的文件頁面都會明確出會支援哪些工具做對應的合約部署。經過查閱,這三個專案都支援使用Remix進行部署,那我們就使用Remix進行這個流程。
Remix是線上的可編輯環境,非常方便,不用使用SDK或終端等其他較為複雜的工具,但本文中的簡易流程只是一次性部署,對合約修改以及調用測試這些還是需要其他工具執行的。
在OpenZeppelin上,對幾個常用的token發行合約進行了模組化的展示,我們可以直接在其中選擇功能,然後直接跳轉到Remix。
這是初始頁面:
#隨後我對這個發行token的合約進行了設置,使用Wyz Research的全名,Wyz的縮寫,並且選擇了功能裡的預發行,並且對合約進行了控制所有權的指定。透過這些操作,在右側的合約程式碼中,多了第一個紅框中顯示的建造者,而預發行的代幣也有了地址指向。
接續點擊右上角的Open in Remix,我們就可以在Remix介面開始編輯。
在Remix介面開始編輯前,請先把MetaMask中的網路和錢包位址調整正確。
進入頁面之後,我們需要把上述對應的兩個位址進行修改,我使用錢包位址來替換。顯示如下:
隨後點選左側的Auto complie,即自動編譯,如果沒有自動編譯,需要點選左側藍色按鈕。當最左側出現了綠色對勾標誌即可。隨後點選左側綠色對勾下的按鈕,進入部署頁面。
在錢包已經修改正確的情況下,點擊左上角的帳戶部分,這個位置代表支付gas的帳戶,而下面這個位置代表部署的地址,選擇好之後,如下顯示:
點擊Deploy,MetaMask會彈出,來支付此動作的gas fee。
合約部署過程中,在Remix下側會顯示合約pending
合約部署成功後,下側會顯示交易成功。
當完成部署後,透過錢包中的按鈕點擊進入瀏覽器查看交易時,可以發現,剛剛我們完成了一個合約創建的動作,而合約執行過程中,向其中的一個代幣發送了相應的代幣。
再點擊地址查看的時候,會發現,我在地址中Mint了1000W枚代幣。但似乎由於測試網瀏覽器原因,並沒有顯示代幣名稱,這點問題仍有待查證。
這次部署是使用的Shardeum,如果在Berachain、Taiko上部署使用的流程是一樣的,只要求在錢包中調整相應網路即可。 Remix這一類線上IDE提供的就是一個對網路操作的簡易入口。
對鏈上進行一定的開發操作,是非應用用戶,進行的最簡單的建設嘗試,可以嘗試使用合約發行一些資產,或者去fork其他dApp的代碼,每一個dApp在鏈上的合約,都是透過組合的方式進行互動的,例如我們看到的Uniswap的swap是一個合約,而提供LP的又是另一個合約。
相較於Dex,其他Defi、Gamefi的合約更為複雜。雖然開發過程複雜且漫長,但對於愛好者來說,了解其原理可以幫助鍊和應用進行更多建設。
PS:接下來,Wyz Research也將對Defi、Gamefi等dApp進行拆解,為讀者介紹其設計想法和結構,敬請期待。
以上是空投愛好者必備的開發知識有哪些?的詳細內容。更多資訊請關注PHP中文網其他相關文章!