-
Notifications
You must be signed in to change notification settings - Fork 369
study resource of system programming in RUST
chyyuu edited this page Feb 12, 2022
·
23 revisions
前提条件: 要求有基本数据结构,算法基础,相对了解或熟悉C/C++/Java等编程.
- 通过阅读和练习 《 Rust by Example 》) 等,全面梳理一遍 Rust 语法。期间可参考书目:(《Programming Rust》、《Rust权威指南》(即官方 Rust Book 中译本)、《Rust编程之道》第二章 、《深入浅出 Rust》等)。(2~6天)
- 重点阅读《Rust 编程之道》 (第三、四、五章,理解类型系统和所有权;第九章,理解错误处理; 第十三章,理解Unsafe Rust) (1~3天)
- 完成《Rust 编程之道》第十章的完整示例代码,掌握Cargo和模块系统。(1~3天)
- 尝试完成编程小练习和中等规模练习,在实践中反复学习。(3~9天)
- 自学:阅读书籍
1.1 编程学习类书籍/文档
- Learn X in Y minutes Where X=Rust
- Rust 程序设计语言 简体中文版
- 通过例子学 Rust
- RUST编程之道
- 深入浅出Rust
- easy rust: simple textbook
- Rust 的绅士(温柔)介绍
- Rust Cookbook 中文版
- Programming Rust 在讲解中与python, C/C++等进行了对比,对理解Rust的ownership,生命周期等有帮助
- A Guide to Porting C/C++ to Rust
- Rust Design Patterns
- HARD: The Rustonomicon
- Rust相关书籍信息大全
- 难: Learn Rust With Entirely Too Many Linked Lists
- Things you can’t do in Rust (and what to do instead)
- 24 days from node.js to Rust
- Rust语言圣经(Rust教程 Rust Course)
- Command Line Rust
1.2 参考和汇总类
- Rust Design Patterns :各种常用编程模式的代码片段
- cargo book 中文 :各种小应用(与系统类访问相关)的参考实现
- Rust Reference中文版:Rust的语言描述
- Rust Language Cheat Sheet:Rust语言特性的快速查找
- Rust Compiler Error Index:rustc编译错误的详细描述和修改提示
- Rust Learning 各种信息汇总:相关学习资料汇总(英文)
- Rust学习资源:相关学习资料汇总(中文)
- Rust 语言术语中英文对照表
- awesome-rust:About A curated list of Rust code and resources. in rustcc
- Awesome Rust in rust-unoffical
- 自学:在线课程/教程
2.1 初级:学习Rust语言
- 中文:Rust编程视频教程(基础)--令狐壹冲
- 中文:Rust编程视频教程(进阶)--令狐壹冲
- Tour of Rust
- 英文:CIS 198: Rust Programming: University of Pennsylvania:2016
- 英文:CS 110L: Safety in Systems Programming : spring 2020
2.2 中级:如何用Rust写系统程序
- 自学:编程练习
3.1 初级编程:小练习题
-
Small exercises to get you used to reading and writing Rust code!
- 要求:小练习全部通过。代码和README提交在自己在github的公开repo上。
-
- 要求:小练习全部通过。
-
exercisms.io 快速练习(88+道题目的中文详细描述)
- 要求:大部分练习会做或能读懂。
- exercism.io官方站点
3.2 中级编程:100行左右的中小练习题
基于笨办法学C/python/ruby的书籍和例子,要求用rust语言重新实现15道以上的编程练习题
- 参考Learn C The Hard Way 中文版
- 参考Learn Python 3 The Hard Way 视屏
- 参考Learn Ruby The Hard Way 中文版
- (进阶,可选)Algorithm in Rust: 基于Rust语言的经典算法,看看自己能否做出来
- 要求:用rust语言编写完成某本“笨办法学(选择一种你熟悉的编程语言)”书中描述的题目中的15道以上的题目。代码和README提交在自己在github的公开repo上。
- 如果不选择“笨办法系列”,可以选择类似Leecode的题目,用Rust实现,但需要在README中给出题目的出处和相关描述信息,并给出采用Rust语言和非Rust语言的实现代码。
3.3 中高级编程:能阅读和编写上百行的程序
- 基本掌握RUST编程,能理解下面的rCore tutorial中的文档和代码。
- (进阶,可选)BOOK:Rust in Action: 基于Rust语言的中小软件项目,看看自己能否做出来