说在前面的话:Dao治理是个常见的需求,openzeppelin帮我们实现了这个功能。功能一点都不复杂,就是第一次接触会感觉涉及的文件有点多。没关系,多看这篇文章两次就记住了。参考第三部分的代码,就可以实现功能,为了流畅度,一些需要深究的地方,我放在了《补充》这个环节一测试环境fo
在 EVM 兼容的区块链中,智能合约可以和其他已经部署的智能合约进行交互。本文讲解了如何在一个智能合约之中调用另一个合约的函数
不变量测试
本文总结了Udemy上“高级Solidity:理解并优化Gas成本”课程的内容,涵盖了费用机制、calldata与memory的差异、变量压缩以及编译器优化等关键方面。
开发者及用户必备钱包 - MetaMask 钱包 使用指南
同大多数编程语言一样,用Solidity编写的智能合约无法直接在以太坊虚拟机(EVM)上运行,必须先将其编译成字节码。
所有以太坊开发者都清楚以太坊世界的一条铁律:合约一旦发布就无法修改。因此,对于合约的发布基本上都采用一种慎之又慎的态度,期望在发布前可以做到尽善尽美,力争合约能正常运行一万年。可是,智者千虑必有失,合约发布百分百不出问题几乎是不可能任务。
本文探讨以下问题:哪种智能合约语言更有优势,Solidity、Vyper、Huff 和 Yul ?最近,关于哪种是“最好的”智能合约语言存在很多争论,当然了,每一种语言都有适用的场景。这篇文章是为了最根本的问题:我应该使用哪一种智能合约语言?
本文详细介绍了Solidity中两种调用合约的方法:通过合约接口的高级调用和使用call方法的低级调用,解释了为什么低级调用不会回滚而高级调用可能会回滚,并对比了这两种方法在调用空地址时的不同行为。
call
我们应当遵循的那些 Solidity 编码规范
文章介绍了如何通过创建子合约来测试Solidity中的内部函数,并解释为什么不应将函数改为public或virtual。同时还提到了无法测试private函数的原因,并提供了相关代码示例。
本文介绍了以太坊虚拟机(EVM)及其核心组件,包括虚拟机、智能合约、操作码和 Gas。EVM 是以太坊网络的核心,它允许开发者创建智能合约,实现各种应用,如代币生成和交易。文章还探讨了 EVM 的使用案例,例如 ERC-20 和 ERC-721 代币,以及去中心化交易所。
编写我们的第一个合约。
本文详细介绍了如何使用OpenZeppelin标准创建和部署ERC-721(NFT)代币,包括NFT的基本概念、ERC-721标准的功能和事件、NFT的应用场景,以及通过IPFS存储NFT元数据和图像的具体步骤。
本文介绍了以太坊智能合约中的字节码、ABI以及如何将字节码反编译为可读的Solidity代码。