rust-by-practice/zh-CN/src/elegant-code-base.md

49 lines
2.7 KiB
Markdown
Raw Normal View History

# 值得学习的小型项目
在国内外的各大 Rust 论坛上,以下问题非常常见:
- 作为 Rust 新手,有哪些项目值得推荐学习?
- 求推荐代码优雅的小型项目
- 有哪些值得推荐的简单、易读的项目
这些问题的答案往往只有一个,那就是实践:做一些优秀的练习题,然后阅读一些小而美的 Rust 项目。
这个恰恰跟本书的目标吻合,因此,我们决定收集一些优秀的资源,并在 _Rust语言实战_ 中呈现给大家。
### 1. Ripgrep
以上的问题通常都会伴随着 [`ripgrep`](https://github.com/BurntSushi/ripgrep) 的推荐, 虽然我不认为它是一个小型项目,但是依然非常推荐大家学习,当然,首先你得做好深挖的准备和耐心。
### 2. 教程:构建一个文本编辑器
该教程 [`https://www.philippflenker.com/hecto/`](https://www.philippflenker.com/hecto/) 将带领我们从零开始构建一个文本编辑器.
### 3. Ncspot
[Ncspot](https://github.com/hrkfdn/ncspot) 是一个终端访问的 Spotify 客户端,小巧、简单、良好的代码组织以及异步编程,值得学习.
### 4. 命令行 Rust
[这个项目](https://github.com/kyclark/command-line-rust) 是书本 `Command-Line Rust(O'Reily)` 的配套项目,可以帮助大家理解该如何更好的编写命令行程序,例如 `head`, `cat`, `ls`
### 5. 在 PNG 中隐藏你的秘密
[这本书](https://picklenerd.github.io/pngme_book/) 将带领大家编写一个命令行程序,功能是在 PNG 文件中隐藏一些秘密信息,首要目标是让我们熟悉 Rust 代码。
### 6. 使用 Rust 写一个小型 OS
[这个博客系列](https://os.phil-opp.com) 会带领大家使用 Rust 语言创建一个小型的操作系统。其中每一篇文章都是一个小的教程并包含完整的代码。
你也可以在[以下地址](https://github.com/phil-opp/blog_os)找到完整的源代码。
2022-12-06 21:36:46 -06:00
### 7. CodeCrafters.io: Build your own Git, Docker, SQLite, or Redis
在 [CodeCrafters](https://codecrafters.io/for/rust) 上,你可以从头开始重新创建您最喜欢的开发人员工具。这是一种掌握 Rust 的实践、最低限度指导的方法,同时欣赏我们每天使用的流行技术的内部结构和文档。
### 8. mini-redis
2022-04-02 02:40:44 -06:00
[mini-redis](https://github.com/tokio-rs/mini-redis) 是一个不完整的 Redis 客户端、服务器实现,由 tokio 官方出品,代码质量非常高,而且有详细的注释,非常适合学习 Rust 和异步编程。
2022-12-06 21:36:46 -06:00
### 9. 使用 Rust 写一个解析器
[这本开源书](https://github.com/rust-hosted-langs/book) 是一个使用 Rust 语言实现编译型语言的教程。
**To be continued...**