本專輯主要是記錄學(xué)習(xí)Solidity的過程采蚀,重點參考了官方文檔以及網(wǎng)絡(luò)學(xué)習(xí)課程
Truffle簡介
Truffle致力于讓以太坊上的開發(fā)變得簡單,是一個基于nodejs的開發(fā)環(huán)境矾瑰,測試框架衷佃,目前已經(jīng)成為以太坊開發(fā)Solidity應(yīng)用的標(biāo)準(zhǔn)框架欺冀。
1、支持的特性
- 內(nèi)置智能合約編譯试幽,鏈接筝蚕,測試、部署和二進制文件的管理
- 腳本化的铺坞,可擴展的部署與發(fā)布框架
- 支持多個公網(wǎng)及私網(wǎng)網(wǎng)絡(luò)環(huán)境管理功能
- 使用EthPM&NPM提供的包管理起宽,使用ERC190標(biāo)準(zhǔn)
- 提供與合約通信的交互控制臺
*支持構(gòu)建流程定制,支持持續(xù)集成
2康震、環(huán)境要求
- NodeJS 5.0+
- Windows燎含,Linux,或Mac OS X
正式運行時需要以太坊客戶端腿短,對于Windows用戶屏箍,建議使用Git BASH來安裝和使用,并且使用管理員身份來運行Git BASH橘忱,以避免一些不必要的異常赴魁。
3、Truffle的安裝
- 命令行模式下運行
npm install -g truffle
Truffle安裝
- 安裝的驗證:
truffle version
安裝驗證
實例代碼metacoin的安裝
在Truffle的官網(wǎng)上提供很多DAPP示例項目钝诚,metacoin是代幣發(fā)行的示例代碼颖御,可以通過Truffle框架下載。
運行:truffle unbox metacoin
圖片.png
合約結(jié)構(gòu)
metacoin項目目錄
目錄結(jié)構(gòu):
Contracts:存玫智能合約文件
Migration:存放部署配置文件
Test:存放測試文件
合約類似編程語言中“類”的概念,其基本結(jié)構(gòu)可包含:
狀態(tài)變量
函數(shù)
函數(shù)修飾器
事件
結(jié)構(gòu)和枚舉等類型
后續(xù)對Solidity中各概念進行詳細說明