跳到正文
LESSON

Rust学习-Week1(选)

Rust学习-Week1(选) — iEDA 开源文档与工程实践。

RUST为选学模块,计划从DAY1开始。

DAY1:准备阶段

一、具体要求

  1. 编程环境搭建
  • VSCode安装及Rust-analyzer插件安装

    VSCode安装环境参考C++ Week1。

  1. 安装Rust和Cargo工具链

    安装教程链接open in new window

二、学习成果展示

  1. 整理关于编程环境搭建中遇到的问题和解决方案的笔记
  2. 使用Cargo创建工程,编写Hello word程序,完成程序编译、执行

三、参考资料

DAY2-DAY3:Rust基础知识学习

一、具体要求

学习如下知识点:

  1. 基本数据类型整型、浮点型、字符串、tuple、array等,变量可变性mut
  2. 复合数据类型enum、struct、trait
  3. 容器类型vector、HashMap、HashSet、BTreeMap、BTreeSet
  4. Rust流程控制if while for,以及pattern match语句if let、while let
  5. Rust函数Function、闭包、迭代器学习
  6. Rust宏Macro编写

具体可以学习Rust语言官方文档open in new window 如下章节:

  • 第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进阶知识学习

一、具体要求

学习如下知识点:

  1. 类型系统泛型编程、trait系统、类型转换
  2. 所有权系统包括所有权机制、Copy和Clone、引用和借用、生命周期、Slice切片
  3. 智能指针Box、Rc、RefCell
  4. 并发编程,Atomic,多线程和异步Async/Await并发,Mutex、Arc
  5. 错误处理Result、Panic、Option、?操作符
  6. 面向函数编程

具体可以学习Rust语言官方文档open in new window 如下章节:

  • 第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

二、学习成果展示

三、参考资料

  1. 书籍、博客、视频:

  2. 社区:

  3. 视频: