本模块专注于 JavaScript 到 Rust 的语言转换学习,通过对比教学帮助开发者快速掌握 Rust 编程。Rust 是一门系统级编程语言,具有内存安全、并发安全和零成本抽象等特性。
# JavaScript 到 Rust 转换学习模块 - Cursor 规则
## 模块概述
本模块专注于 JavaScript 到 Rust 的语言转换学习,通过对比教学帮助开发者快速掌握 Rust 编程。Rust 是一门系统级编程语言,具有内存安全、并发安全和零成本抽象等特性。
## 核心原则
### 1. JavaScript 视角教学
- 始终从 JavaScript 开发者的思维习惯出发
- 使用 JavaScript 概念解释 Rust 特性
- 强调两种语言的语法差异和概念映射
- 重点解释 Rust 的所有权系统和内存管理
### 2. Rust 最佳实践
- 遵循 Rust 官方编码规范
- 使用 Rustic 的惯用写法
- 强调内存安全和并发安全
- 介绍 Rust 社区的最佳实践
### 3. 对比学习策略
- 每个概念都要提供 JavaScript 和 Rust 的对比
- 使用编辑器组件展示可运行的代码示例
- 解释语法差异背后的设计理念
- 重点对比内存管理和并发模型
## 代码示例规范
### 编辑器组件使用
```mdx
<UniversalEditor title="示例标题" compare={true}>
```javascript !! js
// JavaScript 代码
let name = "LangShift";
console.log(name);
```
```rust !! rs
// Rust 代码
let name = "LangShift";
println!("{}", name);
```
</UniversalEditor>
```
### 代码注释要求
- JavaScript 代码使用 `//` 注释
- Rust 代码使用 `//` 注释
- 添加详细的中文解释
- 重点标注所有权和借用概念
### 对比示例结构
1. **概念介绍** - 从 JavaScript 视角解释
2. **语法对比** - 并排显示两种语言实现
3. **差异说明** - 解释语法差异和设计理念
4. **所有权分析** - 重点解释 Rust 的所有权系统
5. **性能分析** - 对比两种实现的性能特点
## 内容组织规则
### 每个学习模块应包含:
1. **概念引入** - 从 JavaScript 概念开始
2. **Rust 语法** - 展示对应的 Rust 实现
3. **所有权解释** - 详细解释 Rust 的所有权系统
4. **对比分析** - 详细解释差异和原因
5. **实际应用** - 提供真实的使用场景
6. **练习题** - 巩固学习内容
7. **最佳实践** - Rust 特有的编码规范
### 重点概念对比
- **变量声明**: `let/const` vs `let/mut`
- **函数定义**: `function` vs `fn`
- **类定义**: `class` vs `struct/impl`
- **异步编程**: Promise vs async/await
- **模块系统**: ES6 modules vs Rust modules
- **错误处理**: try-catch vs Result/panic
## AI 助手行为准则
### 回答风格
- 使用中文回答
- 从 JavaScript 视角解释 Rust 概念
- 提供具体的代码对比示例
- 推荐使用编辑器组件
- 重点解释所有权和内存管理
### 代码生成
- 生成符合 Rust 规范的代码
- 提供对应的 JavaScript 实现
- 包含完整的错误处理
- 添加详细的中文注释
- 使用编辑器组件包装
- 考虑 Rust 的内存安全特性
### 问题解决
- 优先考虑 JavaScript 开发者的思维习惯
- 提供多种 Rust 解决方案
- 解释选择特定方案的原因
- 考虑 Rust 的内存安全特性
- 利用编辑器进行代码验证
- 分析 Rust 特有的编译时检查
## 特殊指令
### 当用户询问 Rust 概念时:
1. 先解释对应的 JavaScript 概念
2. 展示 Rust 的语法和用法
3. 重点解释所有权和借用概念
4. 提供对比示例(使用编辑器组件)
5. 说明使用场景和注意事项
6. 分析 Rust 的性能特性
### 当用户需要代码示例时:
1. 使用编辑器组件包装代码
2. 提供完整的可运行代码
3. 包含 JavaScript 和 Rust 的对比实现
4. 添加详细的中文注释
5. 重点解释所有权和借用
6. 说明代码的工作原理
7. 提供 Rust 性能优化建议
### 当用户遇到问题时:
1. 分析问题的根本原因
2. 提供多种 Rust 解决方案
3. 解释每种方案的优缺点
4. 推荐 Rust 最佳实践
5. 在编辑器中验证解决方案
6. 考虑 Rust 特有的内存安全影响
## 质量保证
### 代码质量
- 所有 Rust 代码必须通过编译检查
- 通过 clippy 静态分析工具验证
- 包含适当的测试用例
- 遵循 Rust 最佳实践
- 在编辑器中测试执行
- 内存安全检查
### 文档质量
- 内容准确无误
- 示例代码完整可运行
- 链接和引用正确
- 格式规范统一
- 交互式代码示例可用
- 多语言内容同步
### 用户体验
- 学习路径清晰
- 示例代码易懂
- 练习题难度适中
- 提供足够的上下文
- 代码编辑器响应迅速
- 性能优化体验
## 模块特定规范
### Rust 特有概念
- **所有权系统**: 对比 JavaScript 的垃圾回收
- **借用检查**: 对比 JavaScript 的引用传递
- **生命周期**: 对比 JavaScript 的作用域
- **模式匹配**: 对比 JavaScript 的 switch 语句
- **特征(Traits)**: 对比 JavaScript 的接口概念
### 性能优化重点
- **内存管理**: 编译时检查 vs 垃圾回收
- **执行模型**: 编译到机器码 vs JIT 编译
- **并发编程**: 无数据竞争 vs 事件循环
- **零成本抽象**: 编译时优化 vs 运行时优化
### 生态系统对比
- **包管理**: Cargo vs npm
- **构建工具**: Cargo vs webpack
- **测试框架**: 内置测试 vs Jest
- **文档生成**: rustdoc vs JSDoc
### 所有权系统重点
- **移动语义**: 所有权转移 vs 引用复制
- **借用规则**: 可变借用 vs 不可变借用
- **生命周期**: 作用域管理 vs 自动管理
- **智能指针**: Box/Rc/Arc vs 原始指针
**文档要求循序渐进,不要在前面的文章中引入后面的概念**
---
记住:这个模块的核心目标是帮助 JavaScript 开发者快速掌握 Rust,因此所有的解释和示例都应该从 JavaScript 的视角出发,并充分利用编辑器组件提供交互式学习体验。同时要重点解释 Rust 的所有权系统和内存安全特性,这是 Rust 区别于其他语言的核心概念。 Workflows from the Neura Market marketplace related to this Cursor resource