本文介绍了Solidity中的modifier,它是一种特殊的函数,用于修改其他函数的行为,例如在函数执行前检查条件是否满足。
本文介绍了Solidity开发的集成开发环境(IDE),包括桌面IDE和在线IDE两种类型,并详细介绍了Remix、Hardhat、Truffle、VScode、EthFiddle、IntelliJ IDEA和Embark这七种最佳Solidity IDE的特点和功能。文章还鼓励读者通过Alchemy University学习Solidity开发。
本文详细介绍了Solidity中的映射数据结构,包括映射的定义、工作原理及其与数组的区别。作者提供了丰富的代码示例,以帮助开发者更好地理解如何在以太坊及Solidity兼容区块链上实现映射,特别是在智能合约开发中的应用。
本文介绍了Solidity中的重入攻击,攻击原理是利用智能合约函数在执行过程中,通过外部调用恶意合约,递归调用原合约函数来耗尽资金。文章详细讲解了单函数重入攻击和跨函数重入攻击,并通过DAO、Lendf.me和Cream Finance等案例说明了重入攻击的危害及防范方法,例如CEI模式、重入锁、提取支付和Gas限制。
本文介绍了Solidity编译器的作用,即将Solidity代码转换为EVM可以理解和执行的字节码的过程。文章详细阐述了solc和solc.js两种编译器的区别与安装方法,包括使用npm、Docker和二进制包等多种方式。此外,还介绍了Solidity反编译器,它可以将编译后的EVM代码转换回类似Solidity的源代码,并列举了几种常用的反编译器工具。
本文介绍了Solidity中的call函数,它是一种底层函数,用于智能合约与合约之间的交互。文章详细解释了call函数的工作原理,包括如何发送以太币、call和delegatecall的区别、call和transfer的区别。此外,文章还推荐了Alchemy University的Solidity课程。
本文介绍了Solidity中智能合约如何调用其他合约的函数,解释了调用其他合约的原因,例如代码复用和规避合约大小限制,并通过示例代码展示了如何在调用合约时更新值以及发送以太币。
本文介绍了以太坊的 Kiln 测试网,该测试网旨在模拟以太坊主网与信标链的合并,但在 2022 年 9 月已被弃用。目前建议使用 Sepolia 测试网作为替代方案,并提供了从 Sepolia 水龙头获取测试 ETH 的步骤和指南,以便在 Sepolia 网络上测试智能合约。
本文介绍了 Flashbots API 如何通过私有交易来解决 MEV 中的 frontrunning 问题。MEV 指的是通过添加、审查或重新排列区块链交易来提取的利润,而 Flashbots API 允许开发者和交易者确保交易不在公共 mempool 中暴露,从而避免被抢先交易。文章还详细说明了如何使用 Alchemy 的 Flashbots API 发送和取消以太坊私有交易。
本文详细介绍了以太坊交易的类型和交易如何在以太坊网络中传播。文章涵盖了从待处理交易到已确认交易的各种状态,并深入探讨了以太坊的 P2P 网络如何通过 RLPx 和 Wire 协议实现节点间的安全通信和信息共享。此外,还讨论了 The Merge 后交易广播方式的变化,为开发者提供了宝贵的参考。