前言:本文纯个人学习 无商业用途 侵删。参考视频 :bilibili 崔棉大师。以及https://learnblockchain.cn/2017/11/20/whatiseth/
学习步骤
1.首先了解了以太坊及以太坊智能合约概念
2.了解编程语言solidity语言
3.调试部署工具Remix
4.下载并熟悉钱包工具Metamask,属于chorm的 一个插件
5.了解以太坊浏览器
6.跑通一个例子——智能合约的hello world
1.以太访及以太坊智能合约的概念
1.1以太坊的概念:
以太坊(Ethereum)是一个建立在区块链技术之上, 去中心化应用平台。它允许任何人在平台中建立和使用通过区块链技术运行的去中心化应用。以太坊平台对底层区块链技术进行了封装,让区块链应用开发者可以直接基于以太坊平台进行开发,只要专注于开发应用本身逻辑的智能合约,这样就可以大大降低开发难度。
1.2 以太坊智能合约概念:
将法律条文写成可执行代码。让法律条文的执行中立化,这个理念和区块链上的程序可以不被篡改、不被干预(只有有人触发交易,它将自动执行)的执行不谋而合,因此区块链引入了这个概念。
2.编程语言solidity语言
2.1 solidity介绍
智能合约现在的主要编程语言是 Solidity 和 Vyper ,Solidity 更为成熟一些。本文基于solidity开发。有点类似java语言。
pragma solidity >=0.4.22 <0.6.0;
// 用contract 关键字定义一个合约
contract Counter {
uint counter;
function count() public {
counter = counter + 1;
}
}
3.钱包插件Metamask
4.项目实战.
下面介绍两种实现的方法。第一种是本地基于终端上实现的。第二种是使用 Remix -Solidity IDE来实现的。
先介绍第一种
4.1开发环境搭建
第一步先安装brew。brew 是 Mac 下的包管理工具,和 Ubuntu 里的 apt-get 类似。为了方便接下来安装geth
[在这里插入图片描述](https://img-blog.csdnimg.cn/
第二步安装geth。geth 是一个以太坊客户端,现在利用 geth启动一个以太坊(开发者)网络节点。
具体代码:
brew tap ethereum/ethereum
brew install ethereum
第三步启动环境
geth --datadir testNet --dev console 2>> test.log
第四步 开始编写合约
部署智能合约需要一个外部账户,我们先来看看分配的开发者账户,在控制台使用以下命令查看账户:
> eth.getBalance(eth.accounts[0]