搭建你的第一个以太坊智能合约 (1)
搭建你的第一个以太坊智能合约 (1)
基于以太坊的智能合约,可以理解为DApp。
区块链把数据分布式的存储在各大node上,而DApp就是把对数据的操作约定,也分布式的存储在各大node上。
这篇文章是在翻译+转述Pete Humiston的
Build Your First Ethereum Smart Contract with Solidity — Tutorial的基础上,加入一些自己的理解,如果有翻译的不够清楚的地方,请利用留言功能。
英文原文,也很简单易懂,而且配合大量的图片说明,有兴趣的童鞋,请参见英文原文。
智能合约应用
目前智能合约还出来发展的初级阶段,还有很多因素是不确定的。
- 区块链钱包
- 游戏(FOMO 3)
- ICO等
实例:
Bob在美国拥有自己的废金属仓库业务。Eric是Bob的中国地区废铁供应商。
Bob和Eric有着良好的业务关系。他们相互信任,并且长期从事业务。两者都有蓬勃发展的业务,特别是Bob常规销售废铁。
Bob部署了一份自动执行的智能合同,一旦他的铁屑库存量减少到了一定范围,他就会自动向Eric发出一份订单,并且注明要求每吨X美元的铁屑报价。
Eric克同意这项安排,并接受Bob的太坊币的付款。
然后Eric就开始履行和Bob的合同。
Eric可以通过ATM换取他的以太币,只需很少的手续费。Eric可以决定持有以太币或换为人民币,但无论哪种方式,他现在都可以立即得到投入资金!
双方都很高兴!
通常,Bob必须联系他的银行并要求将资金线发送到Eric在中国的银行。
处理国际汇款通常需要约48小时,此时Eric将需要等几天才能收到付款。 不仅如此,Bob的银行还要向他收取手续费,以便将钱汇给Eric。
浪费时间和金钱之外。 而且,双方都要解决外汇问题,把美元变成人民币。
我们可以通过这篇文章学习到
- Ethereum Nodes
- Building A Private Blockchain Network
- MetaMask Browser Plug In
- Mist Browser
- Ethereum Wallet
- Web3 Ethereum JavaScript API
- Remix Web Browser IDE
- Geth (Go Ethereum) Command Line Interface
- Solidity Programming Language
那我们开始吧
搭建开发环境
-
通过下面网址,下载并且安装Geth(我的浏览器的plugin提示我网站不够安全,请童鞋注意喔,自己的责任喔)
: https://geth.ethereum.org/downloads/ -
Window下,下载最新版Geth (currently 1.8.7),64-bit版本。
- 下载完成后,双击下载的文件,进行安装
- 选中Geth,点击继续
- 选择安装目录,默认为: C:\Program Files\Geth
- 安装完毕后,点击退出
- 设定 C:\Program Files\Geth 到你的Path环境变量里,并且打开命令行,cd 到Geth目录
- 输入“Geth”,下载整个,全部以太网区块链,你没有看错:是整个,全部以太网区块链,这里需要至少32G的容量,并且下载时间根据网速而定。如果你没有准备好,请勿轻易尝试!!!!
因为我们的目标是建立一个以太网智能合约,而合约的发布和运行,离不开一个node,为了使我们自己的电脑成为一个node,我们就先简单粗暴的备份现有的一个node。
这就完成了我们一个node环境的部署。下次我们将继续这次旅程。
图片来源
图片来自原作者官方网站