博文配套視頻:區塊鏈之公有鏈、聯盟鏈系列課程
快速瞭解以太坊
以太坊優勢介紹
- 相對C、C++、Java而言,基於面向對象的Solidity學習曲線沒那麼陡峭。
- 提供了web3.js、truffle.js框架與JavaScript緊密結合,方便開發人員上手。
- 技術有代表性、資料衆多、生態環境好,目前最大的區塊鏈開發平臺。
以太坊技術架構
以太坊重要的概念
- 賬戶(Account)包含地址,餘額,和存儲和代碼的對象 (普通賬戶 + 合約賬戶)
- 地址(Address)
- 交易(Transaction)發送以太幣、部署、調用智能合約的行爲都稱之爲交易
- gas 以太坊用於執行智能合約的虛擬燃料
- DAPP: 去中心化應用 = 鏈上的智能合約 + Web前端的用戶界面
主要參考資料
- remix IDE:http://remix.ethereum.org/
- Solidity官方API:https://solidity.readthedocs.io/en/v0.6.3/
- truffle官網:https://www.trufflesuite.com/
- 區塊鏈技術博客:https://me.tryblockchain.org/
第一個智能合約
圖解Remix IDE面板
拷貝官網demo
pragma solidity >=0.4.0 <0.7.0; // 聲明solidity的版本
// 創建一個智能合約(合約名第一個字母一般大寫)
contract SimpleStorage {
uint storedData; // 創建一個合約變量
// 函數 public 訪問修飾符
function set(uint x) public {
storedData = x;
}
// function 函數名 (類型 參數....) 訪問修飾符 returns (返回類型,返回類型...)
function get() public view returns (uint) {
return storedData;
}
}
運行智能合約 (重點)