深入探讨可升级合约的架构
Solidity 面试问题汇总
文章从比较全面介绍各种优化gas 的方法,如何优化存储、利用退款、数据类型和打包、使用事件、设计函数等。
Solidity开发者应掌握的十个智能合约: ERC-20 合约,ERC-721 合约,简单拍卖合约,众筹合约,托管合约,多签钱包合约,投票合约,域名注册合约,预测市场合约,游戏合约
Solidity 0.8.22 发布, 改进点包含:文件级事件定义、unchecked 循环增量优化、支持导入 EVM 汇编 JSON 等等。
unchecked
OpenZeppelin Contracts 5.0 版本:更好的 Gas 效率,更优的代码结构。
本手册涵盖了合约部署、跨合约调用、设计模式、Calldata优化、汇编技巧、编译器等等各个方面的优化技巧!不管你是新手还是老手,这本手册都能给你带来惊喜和启发!
合约里的数值通常非常大, 肉眼阅读非常费劲,solpretty 可以让对数字进行漂亮的格式化。
本文章主要讲述了如何在 Solidity 中使用 zk-SNARKs,以及如何使用 ZoKrates 编译器来生成证明和验证合约。
你是否知道大端小端的概念,其定义了是高位数据先保存还是地位数据先保存,EVM 是用 大端格式存储数据,我们知道 EVM 使用 32 字节的字来处理数据,当数据不足 32 个字节时,如何填充数据呢?bytes 有哪些操作详见本文。
Solidity 编码规范推荐标准, 作者列出了 15 条非常使用的规则, 例如:指定固定的编译器版本、导入代码时指定版本, 并使用命名导入,以及变量命名时注意事项。
Chisel是随Foundry提供的高级SolidityREPL(交互式命令工具)。它可用于在本地或Fork网络上快速测试Solidity片段。
Ethernaut 题库闯关追更, 挑战 AlienCodex 合约, 通过本挑战,我们将更深刻的理解 Solidity 的数据存储,以及如何通过写数组达到写插槽的效果。
Solidity 开发基础: 使用Remix、数据类型(整型、地址、合约、数组、结构体、映射)介绍;函数修改器、事件、错误处理、库的使用。
Solidity 的try/catch 语法和常见的语言中的表现不一样,try { } 块中的代码错误是无法被catch 的,这一点要小心要非常小心。
在深入理解 Solidity 错误"的第三篇, 探索处理错误,本文将揭晓这问问题的答案:asset 错误会消耗所有 gas 吗? require 提不提供错误字符有什么样的不同?外部调用的错误如何影响当前上下文?如何处理底层调用调用产生的错误?
在运行时错误是最常遇到的情况,你知道 Error 与 Panic 的细微差别吗? 发生 Panic 错误真的会消耗所有的 gas 么,本文揭晓答案。
Error
Panic
深入了解 Solidity 错误第二篇, 了解编译器错误。
深入了解 Solidity 错误第一篇, EVM 中的错误分类。
在这篇文章中,详细说明的事件的日志是如何生成,索引是如何影响日志的生成,字符串等变长数据是如何处理的。同时介绍了在前端如何获取事件。
扫一扫 - 使用登链小程序
41 篇文章,411 学分
74 篇文章,301 学分
30 篇文章,258 学分
158 篇文章,167 学分
20 篇文章,160 学分