在线Remix编辑器: http://remix.hubwiz.com/我们学习任何一门编程语言的时候,都是从 helloWorld 开始的,当然,Solidity也不例外。
正所谓工欲善其事,必先利其器。要学习这门语言,我们需要先找一个容易上手的环境。这里Remix便 已经为我们准备好了。
打开在线编辑器后,我们会看到如上图三大块(编辑区,指令区,控制台),接下来就可以编写我们的第一个智能合约HelloWord.sol了。
helloWorld
我们编辑如下程序:
//声明版本号 ^向上兼容
pragma solidity ^0.4.16;
//合约 有点类似于java中的class
contract HelloWorld{
//合约属性变量
string myName = "赵雅智";
//合约中方法 注意语法顺序 其中此处view 代表方法只读 不会消耗gas
function getName() public view returns(string){
return myName;
}
//可以修改属性变量的值 消耗gas
function changeName(string _newName) public{
myName = _newName;
}
// pure:不能读取也不能改变状态变量
function pureName(string _name) public pure returns(string){
return _name;
}
}
这段代码对于有经验的开发人员来说,应该不用做过多解释,需要的是你自己亲手敲一遍哦。 这里值得注意的是:程序中的版本号要和右侧编译器版本号一致。本文档统一采用版本号 0.4.16 .小知识:
用constant、view、pure修饰function分别表示:
constant:只能读取不可改变状态变量(就是contract中定义的变量)view:只能读取不可改变状态变量,和constant一样pure:不能读取也不能改变状态变量
想要详细了解他们的区别,请点击: https://www.jianshu.com/p/5f1bc0d39d79这里我们重点看两张图,如下:
整个的一个过程如下:
编写合约->编译->部署
其他选择框全部默认即可。 执行完成之后,我们可以得到以下交易信息(也是我们生成的区块信息):
依次是我们的
-
交易状态:代表我们交易的执行结果。
-
交易哈希:标记转账需要的字段,通俗来讲就是个人转账凭证。每一个哈希对应交易是唯一的,可 以确认交易的隐私性和安全性。
-
合约地址:我们合约部署的区块的地址。
-
from:发送者地址
-
to:接收者地址。
-
gas:交易环境能耗上限。
-
交易消耗:该笔交易占用gas。
-
执行消耗:该笔交易执行消耗的gas
-
哈希值:应该是破解工作量证明的hash值吧???但是和上面的交易hash区别在哪里呢?
-
input、decoded input decoded output 这几个东东目前还不能理解是啥。先搁着。
——下节,我们重点来看看solidity的语法。
每天在抖音直播学习:zyz_laura 努力还账的大吱吱