Rust重构技能Skill rust-refactor

本技能提供 Rust 应用程序的架构重构指南,专注于类型安全、所有权模式、错误处理策略、API 设计、项目组织等关键方面。适用于软件开发者、架构师在进行 Rust 代码重构、代码审查、API 设计和项目结构调整时使用,以提升代码质量和可维护性。关键词:Rust 重构、架构设计、类型安全、错误处理、项目组织、Rust 编程、软件架构。

架构设计 0 次安装 0 次浏览 更新于 3/18/2026

名称: rust-refactor 描述: Rust 应用程序的架构重构指南,涵盖类型安全、所有权模式、错误处理策略、API 设计、项目组织、模块结构、命名约定、转换特性和习惯用法。适用于重构 Rust 代码库、审查 PR 中的架构问题、提高类型安全、设计错误处理策略或组织项目结构。补充 rust-optimise 技能(性能模式)。不涵盖性能优化、内存分配或异步并发调优(参见 rust-optimise 技能)。

Rust 重构最佳实践

Rust 应用程序的架构重构指南。包含 10 个类别的 91 条规则,按影响优先级从关键(类型安全、所有权)到增量(迭代器习惯用法)排序。

何时应用

  • 重构现有 Rust 代码库或规划大规模重构
  • 审查 PR 中的架构问题和代码异味
  • 设计具有适当错误处理的类型安全 API
  • 使用 Cargo 工作区组织 Rust 项目结构
  • 改进模块边界和可见性控制
  • 应用一致的命名约定(RFC 430)
  • 用强类型替换字符串类型 API

规则类别

类别 影响 规则数 关键主题
类型安全与模式 关键 20 新类型、类型状态构建器、PhantomData、枚举、特质对象、关联类型
所有权与借用 关键 6 借用、Cow、生命周期省略、避免克隆
错误处理 15 thiserror/anyhow、两层策略、上下文、优雅降级
API 设计与特质 6 密封特质、扩展特质、泛型约束、构建器模式
项目组织 6 Cargo 工作区、crate 分离、功能分组
模块与可见性 中高 9 重新导出、可见性控制、测试同位置、模块拆分
命名约定 中高 13 RFC 430、snake_case、PascalCase、谓词、单位后缀
转换特性 5 From/Into、AsRef、TryFrom、Deref
习惯用法 6 Default、let-else、解构、匹配守卫
迭代器与集合 低中 5 迭代器方法、collect turbofish、filter_map

快速参考

关键模式 — 优先关注这些:

  • 使用新类型模式防止单位混淆和编码不变性
  • 在函数参数中优先借用而非所有权
  • 库错误使用 thiserror,应用程序错误使用 anyhow
  • 使用类型状态构建器进行编译时必需字段强制执行

常见错误 — 避免这些反模式:

  • 使用字符串类型 API 而非强类型
  • 可用借用时进行不必要的克隆调用
  • 可恢复错误使用 panic! 而非 Result
  • 过度暴露内部类型使用 pub 可见性

目录

  1. 类型安全与模式关键
  2. 所有权与借用关键
  3. 错误处理
  4. API 设计与特质
  5. 项目组织
  6. 模块与可见性中高
  7. 命名约定中高
  8. 转换特性
  9. 习惯用法
  10. 迭代器与集合低中

参考文献

  1. https://rust-lang.github.io/api-guidelines/
  2. https://rust-unofficial.github.io/patterns/
  3. https://doc.rust-lang.org/book/
  4. https://www.lurklurk.org/effective-rust/
  5. https://rust-lang.github.io/rust-clippy/

相关技能

  • 有关性能优化,请参见 rust-optimise 技能