Solidity
未读WEB3 Day4—Solidity基础[part3]
智能合约部署 Smart Contracts Deploying
Sepolia TestNet deploying
我们可以通过进入部署选项卡,从本地虚拟环境(Remix VM)切换到注入的提供者 - MetaMask 来开始部署过程。这一操作将允许Remix发送请求并与您的MetaMask账户进行交互。
随后系统会提示你去选择一个账号。 在你成功连接到remix之后,你会看到账号已经成功链接到并且正在使用sepolia网络的信息。
注意,需要你的测试网络里面必须有足够的 sepolia ETH,如果没有需要从水龙头获取,免费的水龙头我这边会集中收集一次,后续可点击这篇文章:【TODO 挖个坑】;
暂时可以去这里faucet, 但是还是需要主账户里面要有ether。
随后,MetaMask就会要求你在测试网站上签署发送:
交易执行之后,合约地址会将交易详情一同显示在已部署的合约列表下面。这就是Eherscan上部署交易的显示方式。
合约交互 Contract interaction
合约部署完成以后,我们可以与之交互并更 ...
Solidity
未读WEB3 Day3 — Solidity基础[part2]
存储位置
solidity里面有六种存储位置。
Calldata
Memory
Storage
Stack
Code
Logs
calldata和memory是函数执行期间变量的临时存储位置,calldata只读,用于不可修改的函数输入。
相比之下,memory允许读写访问,使变量能在函数内部被修改。
要修改calldata变量,必须先讲它们加载到memory中。
Calldata
只读的, 比storage更经济,主要用于输入。
下面函数中_name 用calldata关键字,就会收到错误提示,因为不可修改。
Memory
可读可修改,大多数的变量默认自动使用memory,但是字符串不能默认,需要明确指定memory或者calldata
string memory variableName = "someValue";
下面会讲到为什么会这么特殊
storage
存储在storage的变量在区块链上是持久化的,其值在函数调用和交易之间保持不变。
比如下面这个变量 favoriteNumber ,声明在函数外部,会被隐式 ...
Twikoo评论系统的Cloudflare部署方案
Twikoo是一款简洁、安全且免费的静态网站评论系统,在提升网站互动性方面表现出色。通常,Twikoo可部署在诸如腾讯云开发环境、Vercel等平台,但借助Cloudflare进行部署,能极大改善冷启动延迟问题,实现快速加载,为用户带来更流畅的评论体验,同时利用Cloudflare强大的全球网络提升访问速度。以下为详细的Cloudflare部署Twikoo评论系统的步骤与要点。
一、前期准备
在开始部署前,需提前准备好相关工具与资源:
Cloudflare账户:若尚未注册,前往Cloudflare官网完成注册流程。
Node.js环境:确保本地开发环境安装了Node.js,可通过Node.js官网下载并安装对应系统的最新版本,安装完成后,在命令行输入node -v验证是否安装成功及查看版本号。
文本编辑器:推荐使用Visual Studio Code、Sublime Text等,方便进行代码编辑与配置文件修改。
二、安装依赖包
首先,创建一个新的项目目录,用于存放Twikoo相关代码与配置文件,在命令行中进入该目录,执行以下命令 ...
Solidity
未读Solidity 基础[part1]
Remix IDE
函数
无返回体函数示例:
// SPDX-License-Identifier: MIT
pragma solidity 0.8.19; // chose our solidity version
contract SimpleStorage {
uint256 public myFavoriteNumber; // 初始值就是0 而且是internal 也就是内部不可见的
function store(uint256 favoriteNumber) public {
myFavoriteNumber = favoriteNumber;
}
}
有返回体示例:
function recive() public view returns (uint256) {
return myFavoriteNumber;
}
数组
// 数组
uint256[] public myFavoriteNumbers;
...
WEB3 Day2—BlockChain Basic 2
Layer1
blockChain的base layer,例如bitcoin、BNB chain、Solana,and Avalanche.
Layer2
构建在L1区块链外部但是也与之连接的任何应用application。有各种类型,比如for example ChainLink(去中心化预言机网络) ,以及像The Graph(事件索引网络)。
好的,我将为你优化这段区块链技术描述,提升专业性和清晰度:
Rollup 技术:以太坊Layer2扩容的核心方案
Rollup是Layer2(L2)扩容的主流解决方案,其核心原理是将多笔链下交易打包为一个聚合交易,仅将交易摘要(而非完整数据)提交至以太坊主链(Layer1),大幅提升交易吞吐量并降低Gas费用。根据验证机制不同,Rollup可分为两类:
1. Optimistic Rollups(乐观汇总)
工作机制:默认所有链下交易均为有效,运营商(Operator)定期向主链提交状态根(State Root)和交易哈希。若其他参与者发现欺诈交易,可在挑战期(通常7天)内提交 ...
从 0 到 1:用 Git、CloudFlare、PicGo、Typora、Hexo 搭建个人博客全流程
一、前言
22年,我用 Hexo + Next 主题搭起第一个个人博客。三年后,随着图床需求升级、对博客风格有了新想法,我决定重构 —— 替换图床工具、更换主题,用 Git、CloudFlare、PicGo、Typora 配合 Hexo 重新搭建。这篇文章复盘从旧版迭代到全新上线的全过程,既是对自己折腾经历的记录,也希望给想优化博客的朋友一份实操参考。
二、环境准备与工具选型
(一)核心工具简介
Git:分布式版本控制系统,负责博客代码的版本管理与远程仓库同步,让博客部署、内容更新更高效。
CloudFlare:提供 CDN 加速、DNS 解析、安全防护等功能,让博客访问更快、更稳定,还能隐藏真实服务器 IP 。
PicGo:图床上传工具,写博客时本地图片能一键上传到图床,解决文章中图片存储与引用问题。
Typora:简洁高效的 Markdown 编辑器,实时预览、语法简洁,专注内容创作。
Hexo:静态博客生成框架,基于 Node.js,支持 Markdown 写作,能快速生成 ...
WEB3 Day1—BlockChain Basic 1
转型方向
从 Java 开发转型至智能合约开发。
学习资源
学习视频
推荐 patrick collins 【Cyfrin】的教学视频 。
同时,Cyfrin Updraft 官网提供了文字笔记和视频课程。不过,某些翻译插件的双语字幕不支持该网站,因此我选择在 YouTube 上观看完整视频,并且将两者结合起来学习。
翻译插件推荐
这里推荐一款翻译插件——沉浸式翻译
创建自己的钱包
安装 MetaMask 插件
首先,进入 MetaMask 官网,将其作为 Chrome 浏览器插件添加到浏览器中。
创建钱包
创建自己的钱包后,会得到三个关键信息:私钥(private key)、助记词(Mnemonic Key)和公钥地址(public Address)。其中,私钥和助记词极其重要,务必安全保存!因为拥有私钥就可以直接访问你的钱包账户,所以千万不能有侥幸心理。建议将助记词记录在纸上,而不是存储在电脑里,如果能记在大脑中(如使用记忆宫殿的方法)则是最安全的。三者的重要性排序为:【Mnemonic > Private Key & ...
高频题
三数之和
两数之和为基础
给你一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a + b + c = 0 ?请你找出所有和为 0 且不重复的三元组。
注意:答案中不可以包含重复的三元组。
// 1 先将数组排序
// 2 从后往前遍历最后一个数 找对应的二元组:二元组 + arr[i] = 0
// 2.1 保证不重复
// 2.2 找出前面部分满足条件的二元组
// 2.3 遍历将arr[i]添加在后面
public static List<List<Integer>> threeSum(int[] nums) {
// 1
Arrays.sort(nums);
int N = nums.length;
List<List<Integer>> ans = new ArrayList<>();
// 2
for (int i = N - 1; i > 1; i--) { // 三元组最后一 ...

![Solidity基础[part3]](https://img.soniachen.com/blog/posts/2025/07/deploying2-20250701102829448.png)
![Solidity基础[part2]](https://img.soniachen.com/blog/posts/2025/06/calldata.png)

![Solidity基础[part1]](https://img.soniachen.com/blog/posts/2025/06/image-20250617173555637.png)




