Ethers.js实战:带你掌握Web3区块链开发Web3时代已来,区块链开发成为技术圈的热门技能。如何快速上手与以太坊交互?Ethers.js作为一款轻量又强大的工具,能帮你轻松搞定查询、交易和智能合约部署。本文通过一个实战脚本,带你一步步掌握Web3区块链开发的核心技能,无论你是
Web3新星:Monad打造NFT全解Web3浪潮席卷而来,高性能区块链成为开发者的新宠。作为Web3生态的新星,Monad以10,000TPS的超高吞吐量、500毫秒的区块速度和1秒交易确认,重新定义了区块链的可能性。本文将带你走进Monad的世界,通过打造Mo
Monad、MegaETH 和 Pharos 之间的竞争本质上没有绝对的领先者,留给开发者更多的权衡在于性能、去中心化还是专业化的优先级
干掉jito的,不会是下一个jito!
本文深入探讨了Solidity智能合约中的REVERT机制,解释了其功能和处理方法,包括require、revert、assert和try/catch的用法。通过实例代码,阐释了这些机制如何确保合约执行的完整性与安全性,并讨论了EVM在处理revert时的响应和行为。文章意在帮助开发者有效调试合约和减少错误风险。
前言本文主要介绍以太坊ERC20、ERC721、RC1155三种代币标准相关介绍以及特点;ERC20代币标准概念:同质化代币标准(等值)核心方法:name():代币名称symbol():代币简写decimals():代币可以分割到的小数位数totalSupply():代
Slang v1是一套为以太坊开发者提供的Solidity代码分析和工具的模块化编译器API。它能够支持80多种版本的Solidity,并提供高效的错误容忍解析器和符号追踪分析,旨在简化开发工具的构建。Slang的独特之处在于,它不仅是编译器,而是为开发者工具打造的API,极大提高了Soliditiy工具的开发效率。
这篇文章通过一个实际案例研究了如何通过重构优化 Solidity 代码来实现气体节省,展示了在一个杠杆收益农场协议 Yieldoor 中,通过改进核心函数 Leverager::liquidatePosition 实现了 15.43% 的气体节约。作者详细描述了测量Gas成本的方法和重构过程,包括减少冗余存储读取、使用结构体缓存、以及启用优化器以提高代码效率。
Leverager::liquidatePosition
在Solidity(以太坊智能合约编程语言)中,常量(constant)、状态变量(statevariable)和不可改变量(immutable)是三种不同的变量类型,它们在定义、存储、使用和修改方面有显著区别。
本文深入探讨了以太坊虚拟机(EVM)的数据存取机制,阐明了不同数据位置(如stack、memory、storage、calldata和transient storage)的性质与用途,及其与Solidity编程的相关性。文章不仅解释了Solidity中常见错误的原因,还提供了丰富的代码示例和图示,帮助开发者理解EVM内部工作原理。
本文深入探讨了Solidity智能合约中的重入攻击,详细解释了重入攻击的机制、类型及防护策略,并提供了真实案例如DAO黑客事件和Curve Finance攻击的分析,强调了安全审计的重要性。
Solidity 0.8.29 发布
本文深入探讨了智能合约和Solidity语言的关键细节,包括与区块链交互的方法、合约调用模式、合约部署方式以及合约特性。作者通过实例和详细解释,阐述了如何在安全和有效的基础上构建智能合约,并强调了理解编码信息和合约结构的重要性。整篇文章结构清晰、逻辑性强,非常适合想进一步了解智能合约开发者。
本文详细介绍了如何在Solidity中实现和测试智能合约的不变性,通过定义有效状态、状态转移和变量转移等属性,并使用Echidna、Medusa和Foundry等工具进行模糊测试。文章分为明确的部分,讲解了不变性质的代码实现过程,并提供了丰富的示例和解释,适合对Solidity和智能合约分析有一定了解的开发者阅读。
前言本文通过Ethersjs库实现和智能合约的交互全流程流程;工具前端项目引入ethersjs库给浏览器安装一个钱包插件例如:MetaMaskopenzeppelin库编写合约合约部分合约//SPDX-License-Identifier:MITpragmasolid
前言本文借助Chainlink预言机中的VRF,实现一个链上可验证随机数的合约,以及相关使用场景的介绍;VRF定义:一种用于生成随机数的去中心化服务,广泛应用于需要公平、不可预测随机性的场景;场景1.游戏随机生成游戏道具、角色属性或战斗结果:在游戏开发中,VRF可以用于生成随机的
前言本文主要介绍使用chainlink预言机中DataFeeds,全文包含了MockV3Aggregator合约和PriceConsumer合约的开发、测试、部署。注意:为了便于测试,在本地区块节点上部署一个MockV3Aggregator。Chainlink(去中心化预言机)Chain
前言多重调用合约设计在于一次交易中执行多个函数调用,这样可以显著降低交易费用并提高效率。
前言合约一旦署上链是不可修改,为了解决后续合约的新增功能,本文将介绍智能合约可升级的的方案,实现升级智能合约的方案主要通过使用代理合约来实现合约的升级;通用可升级代理合约作用:因为智能合约一旦部署就不可修改,为了解决合约可升级可修改的,才使用代理合约来实现,一句话总结允许在不更改合约地址
前言本文通过开发、测试、部署闪电贷合约,测试闪电贷合约另外需要代币合约、借款人合约,主要借助openzeppelin相关库的使用,简化开发过程,该合约在Defi领用是非常重要的一部分;闪电贷闪电贷:一种特殊的贷款形式,允许用户在同一个交易中借入大量资金,并在交易结束前归还这些资金,如果用户
扫一扫 - 使用登链小程序
379 篇文章,1095 学分
67 篇文章,500 学分
209 篇文章,390 学分
116 篇文章,353 学分
145 篇文章,298 学分