从了解区块链,到着手学习,有许多让人迷惑的地方。独自一个人学习的效率是极低的。
有志同道合的小伙伴的陪伴,学习就会效率倍增。
加入HiBlock区块链技术布道群的好处:
- 有问题可以请教
- 可以得到优质学习资源的分享
群里的兔子予童鞋分享的这个链接:https://www.codementor.io/learn/blockchain/courses
有许多优质内容,有需要的朋友可以参照一下。
这篇文章,是通过制作一款可爱的游戏(DAPP,也可以称做智能合约),从而学习Solidity语言。和ETH网络的一些基础知识。
全程在线编程,无需搭建复杂的环境,只需要有任何其他语言的编程经验,即可马上学习。
网址:https://cryptozombies.io
这篇文章是一篇关于制作游戏的总结。
这篇文章参考了:
在线游戏简介:
支持多语言界面:
课程:
编辑页面
学习总结
■ 可视范围的
用语 | 可视范围 |
---|---|
private | 仅限合约内使用 |
internal | +可被子合约使用 |
public | +可被外部合约使用 |
external | 仅限外部合约使用 |
■ 函数专用限制语法
用语 | 用法 |
---|---|
view | 函数只查询数据 |
pure | 函数内没有使用任何外部数据 |
■ 整数
用语 | 用法 |
---|---|
uint8 | 8位无符号整数 |
uint16 | 16位无符号整数 |
uint32 | 32位无符号整数 |
uint256 | 256位无符号整数 等于uint |
int是带符号整数
■ 其他变量
用语 | 用法 |
---|---|
string | 字符串 |
address | 调用智能合约的用户地址 可以通过msg.sender来获取 |
mapping | mapping (uint => address) public zombieToOwner; 存储数据:key - value |
event | event NewZombie(uint zombieId, string name, uint dna); 从外部监听合约状态的变化 |
struct | struct Zombie { string name; uint dna; } 定义一个数据结构 |
require | require(msg.sender == owner); 判定函数,不满足条件,就发生意外 |
modifier | modifier onlyOwner() { require(msg.sender == owner); _; } 自定义限制函数 |
下周我们将继续总结学习到的内容。期待关注。
图片来源
图片来自原作者官方网站