Foundry之部署合约本地网络

在之前的文章里,我们介绍了如何使用Foundry来对我们的合约进行测试。现在合约测试完成后,我们需要将合约部署到本地网络上,以便其他用户可以调用。 [Read More]
Tags: solidity

Foundry单元测试之模拟地址

vm.startPrank 和 vm.prank 都是 Foundry 中用于模拟(prank)不同地址执行合约操作的函数。它们的作用相似,但在使用场景和行为上有一些细微的区别。以下是这两个函数的对比。 [Read More]
Tags: solidity

Foundry单元测试之vm.expectRevert

vm.expectRevert 是 Foundry 中用于测试合约函数是否会抛出 revert 错误的一个非常有用的工具。它允许你验证在执行某个操作时,合约是否会按预期抛出特定的错误。这对编写安全和可靠的智能合约测试至关重要,尤其是在涉及访问控制、权限检查等场景时。 [Read More]
Tags: solidity

在VScode中使用Foundry

在开发 Solidity 合约时,VSCode 提供了强大的支持,特别是通过安装 Solidity 扩展并与 Foundry 配合使用,可以显著提升开发效率。 [Read More]
Tags: solidity

Foundry 简介

随着区块链技术的飞速发展,开发者们对工具的需求也在不断变化。传统的开发工具常常面临着效率低、易用性差和难以维护等问题,而Foundry作为一个新兴的区块链开发框架,正逐步成为开发者青睐的选择。它不仅提高了开发效率,还通过创新的设计和简洁的工作流,帮助开发者更好地构建、测试和部署智能合约。本文将深入探讨Foundry框架的优势、核心特点以及如何在区块链开发中使用它。 [Read More]
Tags: solidity

PoA 共识下的ethereum如何引入出块奖励?

在之前的文章中介绍了通过修改源码的方式来实现PoA共识下的出块奖励,在只有一个节点的情况下,这种方式并不会有什么问题;一旦有新的节点加入网络,那新增的节点就会卡在数据同步的阶段。那为什么会出现这种情况呢? [Read More]

Go 语言调用 C 代码

Go 语言通过 cgo 提供了与 C 代码交互的能力,使得开发者能够在 Go 程序中直接调用 C 语言的函数和库。无论是嵌入 C 代码,还是链接 C 动态库,cgo 都能让 Go 程序与 C 语言代码紧密结合,发挥 C 的高性能和 Go 的便利性。 [Read More]
Tags: go