Files
rust-by-practice/zh-CN/src/elegant-code-base.md
luofu ec707fb3ab <feat>(<elegant-code-base>):<sokoban project url>
Submitted a good hand training project - sokoban
提交了一个不错的练手项目 - 推箱子
2023-12-22 10:42:02 +08:00

3.0 KiB
Raw Blame History

值得学习的小型项目

在国内外的各大 Rust 论坛上,以下问题非常常见:

  • 作为 Rust 新手,有哪些项目值得推荐学习?
  • 求推荐代码优雅的小型项目
  • 有哪些值得推荐的简单、易读的项目

这些问题的答案往往只有一个,那就是实践:做一些优秀的练习题,然后阅读一些小而美的 Rust 项目。

这个恰恰跟本书的目标吻合,因此,我们决定收集一些优秀的资源,并在 Rust语言实战 中呈现给大家。

1. Ripgrep

以上的问题通常都会伴随着 ripgrep 的推荐, 虽然我不认为它是一个小型项目,但是依然非常推荐大家学习,当然,首先你得做好深挖的准备和耐心。

2. 教程:构建一个文本编辑器

该教程 https://www.flenker.blog/hecto/ 将带领我们从零开始构建一个文本编辑器.

3. Ncspot

Ncspot 是一个终端访问的 Spotify 客户端,小巧、简单、良好的代码组织以及异步编程,值得学习.

4. 命令行 Rust

这个项目 是书本 Command-Line Rust(O'Reily) 的配套项目,可以帮助大家理解该如何更好的编写命令行程序,例如 head, cat, ls

5. 在 PNG 中隐藏你的秘密

这本书 将带领大家编写一个命令行程序,功能是在 PNG 文件中隐藏一些秘密信息,首要目标是让我们熟悉 Rust 代码。

6. 使用 Rust 写一个小型 OS

这个博客系列 会带领大家使用 Rust 语言创建一个小型的操作系统。其中每一篇文章都是一个小的教程并包含完整的代码。

你也可以在以下地址找到完整的源代码。

7. CodeCrafters.io: 写一个你自己的 Git DockerSQLite 或 Redis

CodeCrafters 上,你可以从头开始重新创建您最喜欢的开发人员工具。这是一种掌握 Rust 的实践、最低限度指导的方法,同时欣赏我们每天使用的流行技术的内部结构和文档。

8. mini-redis

mini-redis 是一个不完整的 Redis 客户端、服务器实现,由 tokio 官方出品,代码质量非常高,而且有详细的注释,非常适合学习 Rust 和异步编程。

9. 使用 Rust 写一个解析器

这本开源书 是一个使用 Rust 语言实现编译型语言的教程。

10. Rust编写推箱子游戏教程

sokoban 是一个使用Rust语言实现sokoban游戏的教程。虽然社区已停止活跃Initial Commits on Sep 3, 2019GitHub仓库最后一条commit是last year但是项目是完善的-release v0.1.0,拿来练手是个不错的选择。

To be continued...