晓道

@xiaodao

技术交流:https://t.me/solanadevcamp

注册于 2021-12-23
ABI

ABI:应用系统二进制接口(application binary interfaces) 可以把 ABI 理解为 Solidity 智能合约和外部调用者之间的桥梁。它允许智能合约可以被调用和执行,同时确保了函数调用的数据能够正确地被解析。

难度 预计 10 分钟
编写 ERC721 NFT 合约

ERC721 标准代表了非同质化代币(NFT),它为独一无二的资产提供链上表示。从数字艺术品到虚拟产权,NFT的概念正迅速被世界认可。了解并能够实现 ERC721 标准对区块链开发者至关重要。通过这个挑战,你不仅可以熟悉 Solidity 编程,而且可以了解 ERC721 合约的工作原理。

难度 预计 30 分钟
函数

在 Solidity 中,函数是执行计算或操作数据的代码块。函数是智能合约中定义行为和访问控制的主要方式。Solidity 的函数可以被用来修改合约状态、读取合约状态、与其他合约交互等。

难度 预计 60 分钟
数据类型

Solidity 是一种静态类型语言,在声明变量时必须指定变量的类型。在 Solidity 中,数据类型大致可以分为以下几类:值类型、引用类型和 映射类型。

难度 预计 60 分钟
瞬态存储

瞬态存储(Transient Storage)是 Solidity 中的一种存储方式,主要用于临时存储数据。与持久存储不同,瞬态存储的数据在函数执行结束后不会被保留,这使得它非常适合于需要快速计算但不需要长期保存结果的场景。

难度 预计 30 分钟
利用ABI逆向解码交易数据

当合约部署者没有上传合约源代码时,我们是否能逆向分析合约的方法信息呢?通过学习ABI相关知识,你可以结合公共数据来尝试逆向解析出一笔交易的执行意图!请解析这笔交易数据所表达的意图: 0xa9059cbb0000000000000000000000005494befe3ce72a2ca0001fe0ed0c55b42f8c358f000000000000000000000000000000000000000000000000000000000836d54c

难度 预计 10 分钟
call、delegatecall、staticcall

在 Solidity 中,call、delegatecall 和 staticcall 是三种低级函数调用方式,它们用于与其他合约进行交互。

难度 预计 10 分钟

在Solidity 中,library(库)是一种特殊的合约类型,用于编写可重用的代码,以便在其他合约中使用。

难度 预计 10 分钟