理解以太坊DApp及開發工具

2021-09-14 02:32:41 字數 985 閱讀 1206

1、go-ethereum:以太坊go語言版本的原始碼(也叫client,注意區塊鏈網路裡沒有服務端)。

3、ethereum wallet:視覺化的geth(以太坊錢包),可以管理賬戶、發布合約。

5、solidity:開發智慧型合約的程式語言,執行在evm。

6、remix:開發智慧型合約的ide,基於瀏覽器。適合新手(版本控制、儲存等不便)。(mix停止更新,browser-solidity也停止更新,都使用remix了)

1、安裝truffle(音:車否)

npm i -g truffle

通常可以用truffle初始化工程:

truffle init
truffle unbox webpack
我們用第二種方式進行下文演示。

truffle.js:預設配置了乙個網路,這個網路啟動ganache後就自動啟用了(每次啟動都是全新的初始網路,之前的應用資料會丟失),智慧型合約就是被部署到這個網路裡的。

migrations目錄:這裡面是合約的部署指令碼,注意命名以數字加下劃線開頭,合約部署時按這個數字序號順序執行。

5、編譯工程

truffle compile
6、部署合約到區塊鏈網路

在終端裡執行

truffle migrate
執行結束並成功後可以從ganache介面中看到產生了幾個區塊和幾筆交易,這些交易是從預設的第乙個外部擁有賬戶到合約賬戶(這兩個賬戶的概念參見以太坊黃皮書說明,此處不大篇贅述)。

7、打包應用程式並訪問

在終端裡執行(應用程式根目錄下)

1)webpack編譯打包應用

npm run build
npm run dev

以太坊Dapp開發

名詞 區塊鏈可以分為 公有鏈 聯盟鏈和私有鏈。聯盟鏈 本質仍然是一種私有鏈,只不過它要比小組織開發的私有鏈更大,但是卻沒有公有鏈這麼大的規模,可以理解為它是介於公有鏈和私有鏈的一種區塊鏈。聯盟鏈的特點 聯盟鏈專案 fabric 介紹 fabric 是乙個面向企業應用的區塊鏈框架。以太坊主要是公有鏈,...

Meteor開發以太坊Dapp教程

meteor非常適合的5個理由 如果還沒有安裝meteor curl sh 接下來新增web3包 meteor add ethereum web3我還建議新增以下包 ethereum tools 這個包為ethtools物件提供了一組格式轉換函式和ether的模板助手。ethereum elemen...

如何使用Meteor開發以太坊Dapp

meteor非常適合的5個理由 如果還沒有安裝meteor curl sh 接下來新增web3包 meteor add ethereum web3我還建議新增以下包 ethereum tools 這個包為ethtools物件提供了一組格式轉換函式和ether的模板助手。ethereum elemen...