欢迎学习Next.js!在学习具体的知识点之前,我们先来创建一个Next.js项目。创建了可运行的项目,才能在学习的时候边调试边理解,从而达到事半功倍的效果。
本文详细介绍了Solidity编译器的新via-IR编译管道,该管道使用Yul作为中间表示,以便在生成EVM字节码之前进行优化。文章探讨了via-IR的动机、特性和转变为默认编译管道的计划,以及与传统编译流程的比较。
使用founrdy keystore保护你的钱包私钥
使用bash脚本来部署任意合约
使用Viem.sh读取NFT合约信息
使用Foundry部署和开源合约erc20
使用Foundry为银行合约的 DepositETH 方法编写单元测试
可初始化的智能合约设计模式
Web3学习之使用Foundry开发部署和开源ERC20合约Foundry是一个用于以太坊应用程序开发的快速、可移植和模块化的工具包,用Rust编写。Foundry由以下部分组成:Forge:以太坊测试框架(类似于Truffle、Hardhat和DappTools)。Cast:与EVM智
本文介绍了在 Solidity 智能合约中使用 Foundry 测试套件进行不变性测试的方法。不变性测试是一种验证代码正确性的测试方法,与单元测试和模糊测试类似。文章详细介绍了如何设置和运行不变性测试,并通过多个示例演示了如何检测和修复智能合约中的漏洞。
这篇文章介绍了RareSkills提供的Solidity课程,适用于不同水平的开发者,涵盖了从基础到高级的多个主题,如Tornado Cash、Compound V3等技术细节。课程内容免费提供,旨在通过深度理解和优化代码来提升开发者的技能。
Initializable库用于开发可升级合约或代理合约背后的逻辑合约。由于代理合约无法执行constructor函数,通常是将该函数逻辑放到一个external函数中(称为initialize函数)。本库可确保initializer函数全局只能被调用一次。
constructor
在手把手教你实现BigBank文章中,我们实现了一个稍微复杂点的存款、取款业务。但是聪明的你可能发现了,我们的BigBank虽然名字中带有big,但是有一个明显的缺点:它只能存入和取出ETH原生代币,面对广大的符合ERC20标准的Token却无能为力。
在Remix中将BaseERC20合约部署到Sepolia并编写和部署TokenBank合约对代币进行存取操作
在Solidity中,引用类型(如structs、arrays和mappings)需要明确标注其存储位置。存储位置决定了数据的生命周期和可访问性。以下分了3种真实场景来介绍。
写一个0转账攻击合约
Web3学习之GAS机制与手续费详解GAS机制GAS机制是一个比较重要的一个东西,因为我们在传统的开发里面就没有这个东西。GAS是一个特有的EVM的一个计价方式。因为在程序里面有一个问题叫图灵死机的问题。就是你没有办法证明一个程序,它是可以终止。我们在写代码的时候,例如我们写了一个赋
在手把手教你实现Bank智能合约这篇文章中,我们认真拆解了需求,罗列了相关的知识点,已经实现了基于权限控制的存款和取款逻辑。这篇文章,我们会提升难度,不仅仅要实现功能,还要思考怎么合理的去设计一个合约。
分析以太坊虚拟机各语言设计
在前面的系列文章中,我们已经学习了solidity的一些基础概念和知识,单纯的知识点学习起来比较枯燥,这一节我们会通过一个简单的示例来将这些知识整合起来。我们期望实现一个名为Bank的合约。
在本文中,我们将讨论通过 WebSockets 使用实时加密数据以及提供类似服务的头部 WebSockets API
扫一扫 - 使用登链小程序
378 篇文章,1929 学分
209 篇文章,370 学分
187 篇文章,334 学分
65 篇文章,271 学分
115 篇文章,235 学分