上篇文章中,已经讲过Go-Ethereum 1.7.2
如何安装及搭建以太坊私有链,这里就不多介绍。
在本文讲解之前,先介绍以下几点基本概念。
智能合约是存储在区块链上的一段代码,它们可以被区块链上的交易所触发,触发后,这段代码可以从区块链上读取数据或者向区块链上写入数据。
Solidity 是 Ethereum 的一种契约型编程语言,运行在Ethereum虚拟机(EVM)之上。
它的语法接近于Javascript,是一种面向对象的语言。但作为一种真正意义上运行在网络上的去中心合约,它又有很多的不同,下面列举一些:
Browser-solidity
是一个官方提供的一个基于浏览器的合约编译器,非常好用,而且build版本会紧跟最新的 Solidity
的 build 版本。但由于网络原因以及GFW的存在,有可能会另一部分人访问很慢,进而影响开发效率。
可以直接在线使用,访问后面的地址:https://remix.ethereum.org
https://github.com/ethereum/browser-solidity
由于国内网络的GFW原因,以及在网络上访问会影响效率,推荐部署到本地开发。
安装Browser-solidity
,建议先安装 Nodejs
我们只需要执行以下命令即可安装NodeJS的最新v6版本:
curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash -
sudo apt-get install -y nodejs
安装完成后我们可以使用以下两个命令来查看安装的Node版本和npm版本。
node –v
npm -v
下面的4行代码开始将Browser-solidity
安装到本地。
? /home/cuijb/> git clone https://github.com/ethereum/browser-solidity
? /home/cuijb/> cd browser-solidity
? /home/cuijb/browser-solidity> npm install
? /home/cuijb/browser-solidity> npm run prepublish
Browser-solidity
:
npm start
? /home/cuijb/browser-solidity>npm start
> browser-solidity@0.0.0 start /Users/lion/my_project/_eth/browser-solidity
> npm-run-all -lpr serve watch onchange
[serve ]
[serve ] > browser-solidity@0.0.0 serve /Users/lion/my_project/_eth/browser-solidity
[serve ] > execr --silent http-server .
[serve ]
[watch ]
[watch ] > browser-solidity@0.0.0 watch /Users/lion/my_project/_eth/browser-solidity
[watch ] > watchify src/index.js -dv -p browserify-reload -o build/app.js
[watch ]
[onchange]
[onchange] > browser-solidity@0.0.0 onchange /Users/lion/my_project/_eth/browser-solidity
[onchange] > onchange build/app.js -- npm-run-all lint
[onchange]
[watch ] WS server listening on 58651
然后打开浏览器,在地址栏输入:
http://127.0.0.1:8080,可以看到以下效果: