BSC鏈代幣合約質押挖礦分紅模式系統開發詳情丨 DApp 技術棧

Lyr96246466發表於2023-05-18

  Web3的程式設計師——無論你是從哪一個軟體開發+181公鏈2591合約開發3365微電領域轉型而來——從Solidity入手學習

DApp開發。

  在智慧合約的編碼方面,我們目前有許多工具,但認識和理解Solidity非常有必要,大量的已經存在的,和流行的合約都使

用它進行編碼,因此,學習Solidity不但有助於幫助你理解區塊鏈開發的基本知識和概念,還能讓你在許多優秀的開發者已有的

卓越工程上快速起步。


  就程式語言而言,在目前的EVM相容鏈上,你可以使用Solidity或Vyper進行開發,在其他L1s區塊鏈上,例如Solana,你

可以使用Rust來進行合約的開發;在Layer2方案StarkNet中,你可以使用Cairo來進行開發;在Arweave儲存網路中,也存在著

類似3em這樣的執行環境支援你使用JavaScript來編寫合約。


  在這些百花齊放的方案中,實際上存在著兩種不同的合約執行環境,EVM或非EVM方案,前者的程式碼都會被編譯成EVM 

bytecode,而後者則會採用各種各樣的runtime,各顯神通。


<form>

          <label for="address-input">提幣地址:</label>

          <input type="text" id="address-input">

          <label for="amount-input">提幣數量:</label>

          <input type="number" id="amount-input">

          <label for="nonce-input">提幣nonce:</label>

          <input type="number" id="nonce-input">

          <p class="form-note">提幣數量需要包含精度,提幣nonce值需要唯*一,nonce步長值為2</p>

        </form>

        <div class="button-group">

          <button class="connect-wallet-btn" >

          <button class="signmgs-btn" >

          <button class="signmgs-btn" >

          <button class="verifysig-btn" >

          <button class="execute-contract-btn" >

        </div>

理解並掌握智慧合約後,我們可以進入 DApp 的編碼,這是許多網際網路行業從業者的強項,我不會在此贅述關於前端編碼的經

驗,如上所述,我們可以使用流行的前端框架,例如 React 或者 Vue 來進行 DApp 的編碼。毫無疑問,你會需要一些前端的

技術棧知識,主要是 JavaScript 與 CSS。

在此,我想向大家推薦一些優秀的前端庫,使用這些程式碼庫來進行合約互動,會使我們的開發效率事半功倍。



以 React 為例,我們可以使用 wagmi 來幫助我們更好的操作合約,它整合了大量基礎但夠用的 hooks,並提供了與外部

 Provider/Signer 互動的快捷函式。與此同時,wgami 沒有過多的外部依賴,它的核心依賴只有 ethers.js。


如果你不是一個框架愛好者,想要從零開始構建應用程式,不可避免的,你需要使用 ethers.js 或者 web3.js 來進行基本操作。

從我自己的使用經驗來看,我更推薦 ethers.js。

一般來說,我們並不需要其他的庫為我們提供專門的 Provider/Signer 支援,如果你打算支援更多複雜的 Provider,或者同時

支援多網路 Provider/Signer 的讀寫功能,類似 Apeboard 為它的使用者提供跨區塊鏈的資料展現,可以參考 react-web3 或者

 w3modal 兩個流行的模組,這些模組提供了一些好用的功能,但他們的設計不夠解耦,有時會帶來不必要的 bug,對此,我

保持謹慎推薦。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70012429/viewspace-2952928/,如需轉載,請註明出處,否則將追究法律責任。

相關文章