RUST为选学模块,计划从DAY1开始。
DAY1:准备阶段
一、具体要求
- 编程环境搭建:
VSCode安装及Rust-analyzer插件安装
VSCode安装环境参考C++ Week1。
安装Rust和Cargo工具链
二、学习成果展示
- 整理关于编程环境搭建中遇到的问题和解决方案的笔记
- 使用Cargo创建工程,编写Hello word程序,完成程序编译、执行
三、参考资料
DAY2-DAY3:Rust基础知识学习
一、具体要求
学习如下知识点:
- 基本数据类型整型、浮点型、字符串、tuple、array等,变量可变性mut
- 复合数据类型enum、struct、trait
- 容器类型vector、HashMap、HashSet、BTreeMap、BTreeSet
- Rust流程控制if while for,以及pattern match语句if let、while let
- Rust函数Function、闭包、迭代器学习
- Rust宏Macro编写
具体可以学习Rust语言官方文档 如下章节:
- 第3章Common Programming Concepts
- 第5章Using Structs to Structure Related
- 第6章Enums and Pattern Matching
- 第8章Common Collections
- 第10.2节Traits:Defining Shared Behavior
- 第13章Function Language Features:Iterators and Closures 关于closure和itertor的内容
- 第17章Object Oriented Programming Features of Rust
- 第19.5节Macros
二、学习成果展示
三、参考资料
DAY4-DAY7:Rust进阶知识学习
一、具体要求
学习如下知识点:
- 类型系统泛型编程、trait系统、类型转换
- 所有权系统包括所有权机制、Copy和Clone、引用和借用、生命周期、Slice切片
- 智能指针Box、Rc、RefCell
- 并发编程,Atomic,多线程和异步Async/Await并发,Mutex、Arc
- 错误处理Result、Panic、Option、?操作符
- 面向函数编程
具体可以学习Rust语言官方文档 如下章节:
- 第4章Understanding Ownership
- 第9章Error Handling
- 第10章Generic Types,Traits and Lifetimes
- 第13章Functional Language Features: Iterators and Closures未学完的内容
- 第15章Smart Pointers
- 第16章Fearless Concurrency
二、学习成果展示
三、参考资料
书籍、博客、视频:
- 官方 rust 死灵书
- Rust 语言圣经
- Rust 程序设计语言
- Rust 原子操作和锁
- Rust 原子和锁—中文翻译
- Awesome-rust
- Learn Rust Easy - 中文入门书
- 《Rust 编程之道》
- 《Rust 权威指南》
- 《Rust 程序设计·第二版》
- 《深入理解 Rust 并发编程》
- 《Rust 实战》
- 《The Rust Programming Language》
- 《Rust For Rustaceans》
- 《Programming Rust—Fast, Safe Systems Development》
- 《Command-Line Rust》
- 《Rust Crash Course》
- 《Systems Programming Rust》
- 《Rust Atomics and Locks》
社区:
视频: