介绍
区块链流行词 ,智能合约更是区块链应用的重要部分,最近研究了一下 基于truffle 的以太坊的智能开发流程。因为是刚刚起步的行业,坑多,资料少 更新快是必然。所以没有啥好说的,没个新事物这些都不是标准。
想想应用场景,还是有点小激动
环境搭建
- truffle 命令
关于truffle 介绍的入门
http://truffleframework.com/docs/getting_started/installation
还是官网比较合适,不过也是有坑的。
比如 unbox 的时候,一定不要和你新建的文件夹的名字一样。要不然不会从个的运行下面的步骤
2 代码环境
这里我发现 也就两个了 1 -vscode ,2-atom .我用的是atom,不过坑是atom 关于Solidity的支持,基本没有对多版本的控制支持,老代码没有错误,编译器会一直报错。
我个人安装了几个目前还是没有太大硬伤的插件:
image.png
image.png
image.png
这几个主要是围绕着solidity 语言来的。
根据truffle 的官网和自己的atom 基本可以开始打开自己的编译器进行语言的开发了
3 第三方的利用
这里我能发现的是OpenZeppelin
这个的官方网站是https://openzeppelin.org/
这个第三方很有趣的是,进行过一次更改名称。之前叫 zeppelin-solidity
所以网上的资料如果是 zeppelin-solidity也是它。步骤基本都差不多。名字和方法名字不一样而已。
安装完成后,基本你会遇到一个问题是 端口号被占用的情况
killall -9 node
统统的kill 掉,就可以了。
以太坊的官网有关于openzeper 的说明
http://truffleframework.com/tutorials/robust-smart-contracts-with-openzeppelin
不过还是有坑。
以上你的环境基本已经搭建ok了
开始编译
编译和部署智能合约到testrpc
## 启动testrpc
$ testrpc
## 编译合约
$ truffle compile
## 部署合约
$ truffle migrate
最好的结果是要看到这个页面
image.png
这里网上的教程都忽略几点,
1
image.png
MetaMask 的插件安装,目前我能成功的安装就火狐的浏览器的插件
所以本地打开的localhost必须是火狐浏览器,否则你看到的发行的token 是无
2 关于转币
转移币的地址必须是给你的随机的10个地址,不可以另外的地址。
image.png
转移币的时候一定要先把账户导入到meta里面。
项目中架构
image.png我们安装的第三方 就在node_modules 里面,
这里的智能合约模版我们自己可以继承,根据自己的需要。如果不喜欢可以自己来写。前期学习的借鉴还是可以的。比如我们发自己的代币,在智能合约中用于货币支付。等等
https://open.juzix.net/exampleDetail?caseId=101
国内有转移的平台,可以看看具体的应用,选择一个方向即可。
目前还有很多没有弄懂,理论研究匮乏。我也不太看好以太坊,20岁的v神明显招架不住如此庞大的全球以太坊网络服务平台。
网友评论