《纸上谈兵·solidity》第 7 课:Solidity 函数可见性和修饰器 —— public 和 private 不只是权限标签 Posted on August 4, 2025 在 Solidity 中,函数的可见性不仅决定了“谁可以调用”,更深层地影响到合约之间的交互方式、函数的 ABI 暴露、安全性设计和 gas 成本。本课还将介绍如何使用函数修饰器(modifier)实现访问控制与逻辑封装。 [Read More] Tags: solidity
《纸上谈兵·solidity》第 6 课:Solidity 数据存储布局 —— memory、storage、calldata 傻傻分不清? Posted on August 1, 2025 在 Solidity 编程中,变量的“声明”远远不只是类型和名字,更关键的是 —— 存储位置(data location)。错误使用 memory、storage 或 calldata 不仅影响正确性,更直接影响 gas 成本、安全性和语义一致性。 [Read More] Tags: solidity
《纸上谈兵·solidity》第 5 课:依赖与外部调用 —— 合约交互的风险与防护 Posted on July 31, 2025 在现实应用中,Solidity 合约往往不是孤岛。我们需要调用其他合约的函数,获取信息或发起操作。这种合约间交互会引入新的风险点。本课将系统讲解如何调用外部合约,以及如何防御典型攻击如重入攻击。 [Read More] Tags: solidity
《纸上谈兵·solidity》第 4 课:Solidity 合约中的错误处理机制(`require`、`revert`、`assert`)和自定义错误 Posted on July 30, 2025 在智能合约的开发过程中,错误处理 是确保系统健壮性、安全性和可预测行为的关键环节。本课我们将深入探讨 Solidity 中三种主要的错误处理机制: [Read More] Tags: solidity
《纸上谈兵·solidity》第 3 课:事件(Event)机制与链上日志——不是 print,是广播! Posted on July 29, 2025 本课目标 [Read More] Tags: solidity
《纸上谈兵·solidity》第 2 课:调用、修改、读取,Solidity 合约不是 REST API Posted on July 27, 2025 在上一课中,我们已经完成了一个最简单的合约部署流程。这一课我们将重点学习与合约交互,包括如何调用函数、读取状态和修改变量。 [Read More] Tags: solidity
《纸上谈兵·solidity》第 0 课:搭建 solidity 开发环境(三种方式) Posted on July 13, 2025 为什么你需要搭建环境? [Read More] Tags: solidity
go slice使用 Posted on July 10, 2025 切片是Go语言中最常用的数据结构之一,具有灵活、轻量的特点。本文将介绍切片的定义、底层原理、常用操作、性能优化技巧,并配套示例代码。 [Read More] Tags: go
使用 golang 在图片上绘制文字 Posted on July 3, 2025 在图像处理中,文字渲染是赋予图片信息价值的关键技术。github.com/golang/freetype 作为Go语言中最强大的开源字体渲染库之一,能高效实现文字与图像的完美融合。本文将深入探索其使用技巧、底层原理,并通过实战案例展示其灵活性。 [Read More] Tags: go