汉全科技教您区块链开发—如何编写智能合约?http://www.a6shop.cn/ 区块链开发(微/电:185-7862-7946)
1、首先确保已经安装了Node、js,并且版本在5.0以上。
2、安装truffle
3、选择一个以太坊客户端
推荐使用GANACHE(一个用于以太坊开发的个人区块链),使用GANACHE,您可以快速了解您的应用程序如何影响区块链,并反应您的帐户,余额,合同创建和gas花费等细节。
编写智能合约
1、创建项目
新开一个终端,输入如下命令:
项目结构:
contract:存放智能合约的目录
migrations:存放发布智能合约脚本的目录
test:存放测试应用和合约文件的目录
truffle、js:truffle配置文件
truffle-config、js:truffle配置文件(用来解决WINDOWS下命名空间冲突问题)
2、 创建HelloWorld合约
创建合约有多种方式,这里我们使用truffle create命令创建(您也可以在contracts目录下新建)
编写HelloWorld、sol内容如下:
3、 编译合约
我们使用truffle compile命令进行编译:
4、 部署合约
在部署之前我们首先启动GANACHE,启动之后的GANACHE如图:
系统默认初始化了10个账户,每个账户有100eth
启动好GANACHE之后,我们通过truffle create migration命令创建migration文件:
helloworld_migration、js是我们通过truffle命令生成的migration文件(您也可以在migrations文件下手动创建)
接着我们修改helloworld_migration、js的内容,如下:
artifacts、require(“HelloWorld”)这里返回了后续部署脚本与之交互的合约抽象,另外注意这里的HelloWorld是合约名,不是合约文件名
由于truffle默认的配置端口是8454,我们使用的GANACHE的端口是7545,所以我们修改truffle、js,使其内容如下:
最后我们使用truffle migrate命令进行部署:
部署完成后可以看到我们GANACHE上已经有所变化了
到这里合约部署就完成了
合约交互
truffle提供了两种交互方式truffle console和truffle develop,这里我们使用truffle console
当看到上图所示,说明这时我们已经成功运行开发模式的truffle console了,接下来我们获取合约实例:
最后我们通过实例调用sayHello方法
本文链接:http://www.a6shop.cn/wiki/1203.html