死磕以太坊源码分析之downloader同步
Solidity 编程语言的 “Hello world”
说在前面的话:Dao治理是个常见的需求,openzeppelin帮我们实现了这个功能。功能一点都不复杂,就是第一次接触会感觉涉及的文件有点多。没关系,多看这篇文章两次就记住了。参考第三部分的代码,就可以实现功能,为了流畅度,一些需要深究的地方,我放在了《补充》这个环节一测试环境fo
在 EVM 兼容的区块链中,智能合约可以和其他已经部署的智能合约进行交互。本文讲解了如何在一个智能合约之中调用另一个合约的函数
不变量测试
开发者及用户必备钱包 - MetaMask 钱包 使用指南
同大多数编程语言一样,用Solidity编写的智能合约无法直接在以太坊虚拟机(EVM)上运行,必须先将其编译成字节码。
所有以太坊开发者都清楚以太坊世界的一条铁律:合约一旦发布就无法修改。因此,对于合约的发布基本上都采用一种慎之又慎的态度,期望在发布前可以做到尽善尽美,力争合约能正常运行一万年。可是,智者千虑必有失,合约发布百分百不出问题几乎是不可能任务。
本文探讨以下问题:哪种智能合约语言更有优势,Solidity、Vyper、Huff 和 Yul ?最近,关于哪种是“最好的”智能合约语言存在很多争论,当然了,每一种语言都有适用的场景。这篇文章是为了最根本的问题:我应该使用哪一种智能合约语言?
我们应当遵循的那些 Solidity 编码规范
这一多月写了一份NFT合约,合约的代码上线至币安主网链,分别是ERC1155类型的NFT合约,质押合约,以及兑换合约。
编写我们的第一个合约。
UUPS:通用可升级代理标准(ERC-1822)
在一般语境下,OpenZepplin 指代的其实是:OpenZepplin Contract,一组合约开发的可重用包。同时,由于合约升级相对特殊,它还专门提供了用于编写可升级合约的包。
OpenZepplin 虽然提供了支持元交易的工具类(metatx 目录下),但并未对元交易场景提供完整的支持,甚至在其 MinimalForwarder.sol 的源代码的注释中都建议采用别的框架。这个框架就是本文主题:OpenGSN。