solana开发

微信扫码分享
Solana 开发 Day7: 如何提示(测试、AI 辅助开发...)

Solana 开发 Day7: 如何提示(测试、AI 辅助开发...)

视频 AI 总结:本视频是 Solana 开发入门系列的最后一天,回顾了前六天内容(CLI、交易、Anchor 程序、PDA、代币等),重点介绍了本地测试(Solana test validator 和 Surfpool)、AI 辅助开发(vibe coding)以及 compute budget 等进阶主题。推荐官方文档、视频频道和 Solana Stack Exchange 作为后续学习资源,并鼓励通过实践项目和参与社区继续提升技能。 关键信息: 1. 本地测试可通过 Solana test validator 或 Surfpool 实现,后者更接近主网环境。 2. AI 是辅助工具,能提升编码效率,但开发者仍需理解底层原理并承担架构责任。 3. 推荐学习资源:docs.solana.com(官方文档)、视频频道(300+视频)、Solana Stack Exchange(问答社区)。 4. compute budget 和 compute unit 是优化交易的重要概念,需进一步了解。 5. 建议通过构建小项目、贡献开源项目、参与黑客松等方式积累实战经验。

119 0 0 2026-05-26 22:08
使用 Anchor 开发 Solana 程序

使用 Anchor 开发 Solana 程序

视频 AI 总结: 本视频主要讲解了如何在本地环境中使用 Anchor 框架进行 Solana 程序开发。核心内容包括:1)如何通过 `anchor init` 命令或使用 Solana 官方模板创建本地 Anchor 项目;2)介绍了项目的目录结构,并演示了如何编写一个简单的计数器程序;3)详细讲解了两种测试方法:使用 Rust 进行单元/集成测试(利用 `cargo test` 和 `LiteSVM` 模拟环境),以及使用 TypeScript/JavaScript 进行测试(利用 Anchor 的客户端库与链上程序交互);4)简要说明了程序的构建(`anchor build`)与部署(`anchor deploy`)流程,并对比了 Solana 与以太坊在日志记录、测试工具等方面的差异。 视频中提出的关键信息: 1. **本地开发环境搭建**:推荐使用 Solana 官方开发者网站的模板命令创建项目,该方式会生成一个包含前端和 Anchor 程序的完整工程结构。 2. **Anchor 版本管理**:使用 AVM(Anchor Version Manager)管理不同版本的 Anchor,类似于 NVM 管理 Node.js。 3. **程序测试的两种主要方式**: * **Rust 测试**:可在程序源码中或 `tests` 目录下进行,使用 `cargo test`。可以利用 `LiteSVM` 模拟链上环境,进行更接近真实场景的集成测试。 * **TypeScript 测试**:在 Anchor 项目中使用 Node.js 测试框架(如 Mocha),通过 Anchor 提供的客户端库与程序交互,模拟前端调用。 4. **开发工具与库**:提到了 Solana 开发中常用的工具链,如 `Solana Web3.js`(v1)、`Solana Kit`(v2)、`Anchor`(基于 Web3.js 的封装)、`Umi` 以及用于生成 TypeScript 类型的工具 `Codama`。 5. **与以太坊开发的对比**: * **日志系统**:Solana 使用 `msg!` 和 `emit!` 打印日志,主要用于实时调试,日志不像以太坊的 Event 那样作为永久性的结构化数据存储在链上。 * **程序交互**:调用 Solana 程序时需要显式传入所有涉及的账户信息。 * **测试环境**:Solana 的 `LiteSVM` 类似于以太坊 Foundry 中的 `anvil`,用于模拟链环境。 6. **AI 辅助开发**:视频中演示了利用 AI 根据项目中的 `skills` 文档(如 `Solana Dev Skills`)自动生成代码和测试,并强调了通过多轮对话让 AI 自我修正和深入思考来解决开发问题的高效性。 7. **版本迭代与兼容性**:Solana 生态库更新较快,大版本升级可能存在不兼容问题,对于已有项目,若非必要可不急于升级。

82 0 0 2026-04-25 09:25
Cyfrin Updraft 的 Solana 智能合约课程

Cyfrin Updraft 的 Solana 智能合约课程

视频 AI 总结: 本视频是 Solana 课程的介绍,核心内容是讲解如何使用 Rust 语言和 Anchor 框架开发 Solana 程序。课程将通过原生 Solana 库和 Anchor 框架两种方式进行教学,旨在帮助学员快速掌握 Solana 程序开发,并深入理解 Solana 的底层原理。课程鼓励使用 AI 辅助学习,并提供了练习和解决方案,帮助学员实践和巩固所学知识。 关键信息: 1. Solana 程序开发有两种方式:使用 Solana 原生 Rust 库(更深入理解底层原理)和使用 Anchor 框架(快速原型开发)。 2. 学习本课程的原因包括:开发 Solana 程序、练习 Rust 编程、以及对审计和漏洞赏金感兴趣。 3. 课程的先决条件包括:Rust 编程基础、区块链基础知识、以及 EVM 智能合约开发经验(如 Solidity 或 Vypr)。 4. 鼓励使用 AI 辅助学习,但需要注意 AI 生成代码可能存在问题,需要结合文档和搜索进行修正。 5. 课程练习分为原生程序开发和 Anchor 框架开发,练习和解决方案位于 GitHub 仓库中。 6. Solana 中代码和状态分离,代码存储在 Programs 中,状态存储在 Accounts 中。 7. Solana 交易可以并行执行,因此需要声明交易可能修改的所有账户。 8. Solana 中部署程序或创建账户需要锁定 SOL,关闭账户或删除程序时,锁定的 SOL 会被返还。 9. Solana 程序默认可升级,而 Ethereum 合约默认不可变,需要使用代理合约才能升级。 10. Solana 中所有数据都存储在 Accounts 中,Accounts 包含 LAMPORTS(余额)、DATA(任意数据)、OWNER(程序所有者)、EXECUTABLE(是否为程序账户)等字段。 11. PDA (Program Derived Addresses) 是没有私钥的公钥,由程序 ID、种子和 bump 确定性地创建,常用于存储用户相关信息。 12. CPI (Cross-Program Invocation) 是程序调用另一个程序,有最大深度限制(目前为 4),且需要注意权限传递。 13. 使用 Anchor 框架开发 Solana 程序时,可以通过 IDL (Interface Definition Language) 文件导入其他程序的接口,无需手动声明指令。 14. Solana 程序有大小限制,并非所有 Rust 库都可以使用。 15. 创建 Solana 账户需要指定空间大小、支付租金,并且账户本身需要签名。 16. 转移 SOL 有两种方式:如果源账户属于系统程序,可以直接调用系统程序;如果源账户是 PDA,则需要手动转移。 17. Solana 中与 Token 相关的概念包括:Mint Authority(铸币权)、Mint(Token 本身)、Token Program(管理 Token 的程序)、Token Account(存储 Token 余额的账户)、Associated Token Account(与用户关联的 Token 账户)。 18. 可以使用 Solana CLI 管理 Token,包括创建 Token、铸币、转移 Token、查看余额等。 19. 恒定和 AMM (Constant Sum AMM) 是一种以恒定价格交换 Token 的 AMM,其公式为 x + y = L,其中 L 为常数。

627 0 0 2026-01-26 18:55
什么是Jito Bundles以及如何使用它们?

什么是Jito Bundles以及如何使用它们?

视频 AI 总结: 本视频介绍了如何使用 QuickNode 的 Liljit 插件在 Solana 上执行多个交易或以顺序方式执行复杂交易。核心内容是如何创建、模拟和发送 JITO bundle 到 Solana 主网,利用 JITO 的区块引擎验证和执行交易,从而实现多个交易在单个 slot 内按顺序执行。 关键信息: 1. JITO bundle 的工作原理:用户创建并签名多个交易,将这些交易打包成一个 bundle,并在最后一个交易中添加一个 tip 指令。 2. JITO 区块引擎验证 bundle 中的交易是否可以执行,并模拟所有交易。 3. 通过 QuickNode 的 Liljit 插件,可以模拟和发送交易 bundle 到 JITO 验证客户端。 4. 视频演示了如何使用 TypeScript 脚本,结合 Solana web3js 和 Solana program library,创建包含多个交易的 JITO bundle,并发送到 Solana 主网。 5. 脚本中包含了模拟 bundle、获取 JITO tip 账户、获取最近区块哈希、创建交易、将交易转换为 base64 和 base58 格式、发送 bundle 以及轮询 bundle 状态等步骤。 6. 强调了在将代码推送到公共仓库时,务必删除包含私钥的文件。

934 0 0 2025-09-19 09:02
学习 Surfpool - 简化 Solana 开发流程

学习 Surfpool - 简化 Solana 开发流程

**视频 AI 总结:** 该视频介绍了 Surfpool,一个旨在简化 Solana 开发流程的工具。Surfpool 核心功能是提供一个本地 Solana 验证器,它可以模拟主网状态,让开发者在本地环境中测试和调试他们的程序,而无需连接到 Devnet 或 Testnet。此外,Surfpool 还提供了一套工具,帮助开发者安全地将他们的程序部署到链上,并进行索引。 **视频中提出的关键信息:** * **Surfpool 是什么:** Surfpool 是一个本地 Solana 验证器,可以模拟主网数据,并提供程序部署和索引工具。 * **解决的问题:** 解决了 Solana 开发者在本地测试时需要手动配置账户和依赖的问题,以及在部署程序时需要考虑安全性的问题。 * **与 Ethereum 的 Anvil 的对比:** Surfpool 被认为是 Solana 版本的 Anvil,但它在某些方面超越了 Anvil 的功能。 * **如何获取主网状态:** Surfpool 通过在处理交易之前检查交易涉及的账户,并从主网获取缺失的账户数据来模拟主网状态。 * **Surfpool Studio:** 提供了一个用户界面,可以启动/停止时钟,更改插槽,更改日期,并提供了一个交易检查器,可以查看交易的详细信息。 * **Faucet:** Surfpool 提供了一个 faucet,可以为测试账户提供 SOL、USDC 和 Jupe 等代币。 * **Runbooks:** Surfpool 使用 runbooks 来描述链上基础设施,并提供了一种安全地将程序部署到链上的方法。 * **贡献方式:** 鼓励开发者使用 Surfpool,报告 bug,并贡献代码到 Surfpool 的 GitHub 仓库。 * **未来计划:** 计划增加更多 cheat codes,改进文档,并与其他工具集成。

1175 0 0 2025-09-17 21:13
Surfpool Studio 介绍 - Solana 教程

Surfpool Studio 介绍 - Solana 教程

视频 AI 总结: 该视频是对 Solana 开发工具 Surf Pool 的最新版本(0.10.4)的评测,重点关注其新引入的 Surf Pool Studio 功能。视频作者在体验后,对 Surf Pool 在修复之前版本中存在的问题,以及在用户体验和功能性上的改进表示赞赏。总的来说,作者认为 Surf Pool 是一款有用的 Solana 开发工具,尤其是在本地模拟主网环境方面。 关键信息: * Surf Pool Studio 提供了本地 Web UI,用于检查交易细节,包括指令级别的交易检查和字节级别的差异比较。 * Surf Pool 修复了之前版本中交易排序的问题,现在交易按照从上到下的顺序显示。 * Surf Pool 允许开发者通过命令行参数(-K)指定用于 airdrop 的密钥对,避免了对全局 Solana 配置的依赖。 * Surf Pool Studio 包含一个 faucet 功能,但实际上是覆盖账户余额,而非实际的 airdrop。 * Surf Pool Studio 的交易检查器存在一些 bug,例如无法正确解析某些交易,以及在显示账户数据时,将 ASCII 字符以十六进制形式展示。 * 视频作者还提到了 Surf Pool 在查询主网账户数据方面的优势,并建议开发者使用 Surf Pool 进行本地 Solana 开发。 * 视频作者尝试了 Surf Pool 的 watch 功能,但没有成功。

2639 0 0 2025-09-02 15:51
如何配置 Solana 开发环境 - 完整新手指南

如何配置 Solana 开发环境 - 完整新手指南

视频 AI 总结: 本视频介绍了如何在本地搭建Solana开发环境,包括安装必要的工具、运行本地验证器、配置Solana CLI以及使用Anchor框架创建、构建、测试和部署Solana程序。视频旨在帮助初学者快速上手Solana开发,并强调了本地测试的重要性。 关键信息: 1. 使用`pxneutro install`或手动方式安装Solana开发所需工具。 2. 通过`solana-test-validator`命令运行本地Solana验证器,模拟Solana区块链。 3. 使用`solana config get`查看和`solana config set`配置Solana CLI连接的RPC URL,切换不同的Solana网络(如DevNet、本地网络)。 4. 使用`solana keygen new`创建新的密钥对,并使用`solana airdrop 2`获取本地SOL代币。 5. 使用Anchor框架通过`anchor init`创建新的Solana程序工作区。 6. 使用`anchor build`构建程序,`anchor test`运行测试,`anchor deploy`部署程序到本地验证器。 7. 使用Solscan等区块浏览器连接到本地RPC URL,验证交易是否成功部署。

1447 0 0 2025-07-17 16:28