rust使用教程详解

欢迎来到 Rustlings。该项目包含一些小练习,让您习惯阅读和编写 Rust 代码。这包括阅读和响应编译器消息!

建议在阅读Rust 官方书籍(学习 Rust 最全面的资源)的同时做 Rustlings 练习 📚️

Rust By Example是另一个推荐资源,你可能会觉得有用。它包含与 Rustlings 类似的代码示例和练习,但在线。

入门

安装 Rust

在安装 Rustlings 之前,您需要安装最新版本的 Rust 。请访问www.rust-lang.org/tools/install获取有关安装 Rust 的更多说明。这还将安装Cargo,即 Rust 的包/项目管理器。

🐧 如果您使用的是 Linux,请确保已安装gcc(链接器)。

Deb:sudo apt install gcc。Dnf sudo dnf install gcc:。
🍎 如果您使用的是 MacOS,请通过运行确保您已安装 Xcode 及其开发人员工具xcode-select --install。

安装 Rustling

以下命令将下载并编译 Rustlings:

复制代码
cargo install rustlings

如果安装失败... (点击展开)

初始化

安装Rustlings后,运行以下命令初始化rustlings/目录:

复制代码
rustlings init

rustlings如果找不到命令 ... (单击展开)

现在,进入新初始化的目录并启动 Rustlings 以获取有关开始练习的进一步说明:

复制代码
cd rustlings/
rustlings

工作环境

编辑

我们一般推荐使用带有rust-analyzer 插件的VS Code。但任何支持rust-analyzer 的编辑器都应该足以完成练习。

终端

使用 Rustlings 时,请使用现代终端以获得最佳用户体验。Linux 和 Mac 上的默认终端应该足够了。在 Windows 上,我们推荐使用Windows 终端。

做运动

练习按主题分类,可在子目录中找到exercises/<topic>。对于每个主题,都有一个附加README.md文件,其中包含一些资源,可帮助您开始学习该主题。我们强烈建议您在开始之前先查看它们 📚️

大多数练习都包含一个错误,导致它们无法编译,而修复它则取决于你!有些练习包含需要通过的测试才能完成练习✅

搜索TODO并todo!()找出您需要更改的内容。进入h观看模式询问提示💡

观看模式

初始化后,只需运行命令即可启动Rustlings rustlings。

这将启动监视模式, 该模式将按照预定义的顺序引导您完成练习(我们认为这对新手来说是最好的)。每次您更改目录中的练习文件时,它都会自动重新运行当前练习exercises/。

如果检测目录中的文件更改exercises/失败... (单击展开)

练习列表

在手表模式下(启动后rustlings),您可以进入l打开交互式锻炼列表。

该列表允许您...

  • 查看所有练习的状态(已完成或待完成)
  • c:继续另一项练习(暂时跳过一些练习或返回上一个练习)
  • r:重置练习的状态和文件(之后您需要在编辑器中重新加载/重新打开其文件)

请参阅列表页脚以了解所有可能的键。

继续

完成 Rustlings 后,请充分利用新知识!通过构建自己的项目、为 Rustlings 做贡献或寻找其他开源项目来继续练习 Rust 技能。

第三方演习

第三方练习是由社区维护的一组练习。您可以使用rustlings安装的相同程序cargo install rustlings来运行它们:

您想创建自己的 Rustlings 练习集来专注于某些特定主题吗?或者您想翻译原始的 Rustlings 练习吗?那么请按照有关第三方练习的指南进行操作!

卸载 Rustlings

如果您想从系统中删除 Rustlings,请运行以下命令:

相关推荐
离歌漠15 小时前
《我用 Tauri 做了一个本地开发工具箱》
rust·typescript·vue
小小龙学IT20 小时前
Python Polars 高性能数据处理引擎深度解析
开发语言·python·rust·1024程序员节
zzu123zsw1 天前
为什么 Python 做 Agent 总在并发中崩溃?拆解 Blockcell 在 Rust 下的 Host-Cell 隔离与自愈状态机
开发语言·python·rust·大模型·ai agent
hsg771 天前
简述:基于Ubuntu24编译发布rust开发的html+web后端服务的方法
rust·1024程序员节
zzu123zsw1 天前
当 GPU 加速渲染遇上无头组件:拆解 Yororen UI 在 GPUI 生态下的状态解耦与 XML 模板实践
xml·ui·rust·gui·gpui
传奇开心果编程1 天前
【Rust入门练中学】第6课:结构体与方法
开发语言·rust·结构体·编程语言理论·结构体方法·编程通用语言
本地化文档1 天前
cutile-rs-book-l10n
rust·gpu·nvidia·cuda·sphinx·crowdin
qq_406981032 天前
大白话rust系列09 函数调用两次有什么错?
开发语言·python·rust
康小旺2 天前
TypeScript 编译器开始卷 Rust 了:Cloudflare 的 tsrs 到底想干嘛?
rust·typescript
Norna2 天前
时间轮的 +1,为什么最后只留在顶层
rust