[币严区块链]简单易懂的以太坊(ETH)智能合约开发⼊门教程以太坊(Ethereum)是⼀提供个智能合约(smart contract)功能的公共区块链(BlockChain)平台. 本⽂介绍了⼀个简单的以太坊智能合约的开发过程.
开发环境
在以太坊上开发应⽤,⾸先需要安装其客户端,本⽂使⽤基于Go语⾔的Geth, 其官⽹为github/ethereum/go-ethereum.
第⼀步
在命令⾏环境中输⼊以下命令, 连接到以太坊测试⽹络
geth --testnet --fast --cache=512 console
第⼆步
在Geth提⽰符下输⼊以下代码, 创建⼀个⽤户并设置密码
第三步go语言入门书籍
在Geth提⽰符下输⼊以下代码, 确认新⽤户的账户余额为0, 并开始"挖矿"(mine)
miner.start()
第四步
新开⼀个命令⾏窗⼝并输⼊以下命令, 将这个窗⼝连接到正在挖矿的窗⼝
geth attach
第五步
在Geth提⽰符下输⼊以下代码, 确认新⽤户的账户余额有所增长
第六步
使⽤智能合约的在线编译器ethereum.github.io/browser-solidity/编译以下代码contract HelloWorld
{
address creator;
string greeting;
function HelloWorld(string _greeting) public
{
creator = msg.sender;
greeting = _greeting;
}
function greet() constant returns (string)
{
return greeting;
}
function setGreeting(string _newgreeting)
{
greeting = _newgreeting;
}
/**********
Standard kill() function to recover funds
**********/
function kill()
{
if (msg.sender == creator)
suicide(creator); // kills this contract and sends remaining funds back to creator
}
}
第七步
编译器⽣成的代码如下
var _greeting = /* var of type string here */ ;
var helloworldContract = act([{"constant":false,"inputs":[],"name":"kill","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_newgreeting","type":"string"}],"name":"setGreeting","outputs":[],"payable": var helloworld = w(
_greeting,
{
from: h.accounts[0],
data: '606060405260405161044e38038061044e833981016040528080518201919060200150505b33600060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908302179055508060016000509080519060200190828054600181600116156101 gas: 4700000
}, function (e, contract){
console.log(e, contract);
if (typeof contract.address !== 'undefined') {
console.log('Contract mined! address: ' + contract.address + ' transactionHash: ' + ansactionHash);
}
})
第⼋步
修改编译器⽣成的代码, 设置显⽰的字符串以及减少费⽤(gas)
var _greeting = "Hello World" ;
gas: 300000
第九步
将修改完的代码复制到第四步的窗⼝中, 如果出现Error: account is locked undefined错误的话, 则使⽤personal.unlockAccount(eth.accounts[0], 'password')命令将⽤户解锁.
第⼗步
等候⼀段时间之后, geth窗⼝就会出现Contract mined! , 表明合约代码发布成功
使⽤()命令来运⾏该合约
总结
本⽂介绍了⼀个简单的以太坊智能合约的开发过程,做完这⼗⼀步,相信你对以太坊智能合约的开发已经能够⼊门了!
BIZZAN(币严) 交易所官⽅⽹址:
www.bizzan
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论