3 秒后将继续下一节内容
下一节
重播
学习下一节
登录 后可观看高清视频

Pinocchio 入门

12次播放
3小时前

一、Anchor 与 Pinocchio 的技术关系 这是本节课最核心、也是信息密度最高的部分。

1. 两者在技术栈中的位置

  • Anchor
    • 上层开发框架
    • 提供完整脚手架、账户校验、测试与部署体验
    • 更适合初学者与应用型开发
  • Pinocchio
    • 底层 Rust crate
    • solana-program 同一层级
    • 提供更直接、可控的程序构建方式
    • 对 Rust 基础要求更高

课程中的一个关键判断是:

Anchor 是“上层封装工具”,Pinocchio 是“底层引擎组件”。

2. Anchor 2.0 与 Pinocchio

课程明确提到:

  • Anchor 2.0 正在逐步引入 Pinocchio 作为底层核心库
  • 这并不意味着 Anchor 会被淘汰
  • 而是 Anchor 继续承担“易用层”,Pinocchio 负责“性能与控制力”

因此,对大多数开发者来说:

  • 先学 Anchor,再理解 Pinocchio 是更合理的路径

二、推荐学习路径与心智模型

课程中形成的共识路径是:

  1. Rust 基础(不要求很深)
  2. Anchor(重点掌握账户模型、PDA、CPI、测试)
  3. Pinocchio(适合对性能、底层机制有更高要求的开发者)

特别强调:

  • Anchor 入门阶段不需要精通 Rust
  • Pinocchio 对 Rust 语法、类型系统、生命周期理解要求更高

三、Vault 抽象为何如此常见

1. Vault 的本质

Vault 是 Solana 程序中非常常见的一种模式,用于:

  • 暂时托管 Token
  • 管理资产流向
  • 作为权限控制与状态隔离的中间层

2. 为什么教学常从 Vault 开始

课程给出的解释是:

  • Vault 逻辑足够简单
  • 又能覆盖:
    • PDA
    • 权限校验
    • CPI
    • Token 操作

因此非常适合作为教学与入门案例。

四、Pinocchio 0.10.x 的关键变化认知

课程中多次提到新版本带来的变化点:

  • API 调整较多
  • 强类型 Address 替代旧版 Pubkey 抽象
  • bump 不再被强烈推荐显式保存
  • 对 Compute Unit 的使用更加友好

也提醒学员:

  • 教程与版本可能存在不一致
  • 遇到问题时优先对照官方文档与社区说明

五、测试、工具与工程实践提示

1. 测试策略

  • Anchor 提供完整测试框架
  • Pinocchio 更偏向底层,需要额外测试工具
  • Blueshift 推荐使用 mollusk 进行测试

2. 工具链建议

  • 使用 rust-analyzer 提升 IDE 体验
  • 遇到依赖问题可通过指定版本解决
  • 课程中给出了可直接使用的 cargo update 方案