NO IMAGE

最近開始學習以太坊DApp開發,這裡記錄一下我的學習過程。

開發之前要先搞清楚各種概念:

以太坊:www.ethereum.org ,是一個區塊鏈系統,相對於比特幣網路系統的純貨幣功能,以太坊區塊鏈增加了智慧合約,大大拓寬了其應用領域;

以太幣:ETHER,一種類似於比特幣的電子貨幣,以太坊區塊鏈系統上的所有操作都需要消耗以太幣;

智慧合約:Smart Contract,用程式程式碼(Solidity程式碼)寫的合約,使得合約雙方不需要信任彼此也可以進行交易;

Solidity:編寫智慧合約的語言,是以太坊開發者專門為編寫智慧合約設計的一種程式語言;

開發環境:分為線上開發環境Remix和本地開發環境。

Remix:這是最簡單方便的智慧合約開發環境,直接在瀏覽器裡編寫、除錯智慧合約,網頁地址: https://remix.ethereum.org/

本地開發環境:完全在網頁上智慧開發智慧合約,DApp肯定還需要編寫自己獨有業務系統的邏輯,這就一定需要本地開發環境來與自己獨有業務系統互動,下面重點介紹一下。

本地開發環境有很多種搭建方式,因為以太坊全部程式碼是開源的,開發者完全可以把所有的以太坊程式碼編譯一遍搭建一套獨有的以太坊系統。我這裡只介紹最簡單的一種本地開發環境:Node.js。

1,安裝Node.js,這個就不寫步驟了。

2,安裝Solicity編譯器:

npm install -g solc

3,安裝本地測試區塊鏈系統

npm install -g ganache-cli

4,執行剛才安裝的測試區塊鏈系統

ganache-cli

5,建立測試專案目錄

mkdir test

cd test

6, 在專案目錄,安裝web3.js

// 一定要用0.20.1版本,本人試過最新版本,後面的程式碼走不過去,參考Jerry的文章:寫一個簡單的智慧合約
npm install [email protected]

環境準備好了,下一篇文章介紹編寫和執行智慧合約。