Solidity语言简介
solidity语言是一种可以编写智能合约的高级语言,当然编写智能合约不止这一种,但是学习以太坊最好还是学会这一种语言就差不多了。在以太坊平台上,solidiy编写的智能合约会运行在以太坊虚拟机EVM之上,变成字节码运行。
新手入门建议使用官方IDE开发工具Remix。
结构
solidity语言中的合约结构和面向对象编程的类相似。一个合约就几乎是一个类,结构基本一致。包括声明变量(如状态变量,函数,函数修改器,事件),合约继承等。
contract SimpleContract{
unit SomeData; // 状态变量
function(){
// 函数
}
address public creater; // 创建者地址
function SimpleContract() {
creater = msg.sender; // 在构造函数中记录合约创建者
}
modifier onlyCreater() {
// 函数修改器
require(msg.sender == creater);
_;
}
function abort() onlyCreater(){
// 使用函数修改器
}
event Deposit(address _from, uint _amount); // 事件
function Donate() payable(){
Deposit(msg.sender, msg.value); // 触发事件
}
}