目录
- Rust 相关新闻 | Github Rust开源软件增速榜(可以快速查询到目前有哪些优质的Rust项目?)
- C++中的*和&的用法:指针、解引用、求地址运算符、引用
- 双冒号(::)运算符允许我们调用置于String命名空间下的特定from函数, let mut s= String::from("hello");
::< ... >的方式来增加类型注释 (摘自)
- 日常开发三方库精选
- Rust中Turbofish之函数后面双冒号(::)用法
- Rust总结
- Rust入坑指南:核心概念
- -----------------------------------------------------------------
- Rust 交叉编译 macOS 为 Linux 和 Windows
一、Rust入门教程
Rust构建:Cargo
- 【Rust构建】rustc 、rustup 、cargo 三者的关系是什么?
- 【Rust构建】Rust 与 Cargo 升级指南:rustup update 命令详解
- 【Rust构建】 Cargo Workspace 依赖统一管理:多应用多模块项目如何保持依赖版本一致
Rust基础
- #![allow(unused)] 的作用详解 —— #[ ] 和 #![ ] 叫 属性,英文是 Attribute。即 外部属性 和 内部属性
- 【Rust基础】Rust 与 Java 概念对比:cargo、crate、package、module
- 【Rust基础】rustc 、rustup 、cargo 三者的关系是什么?
- 【Rust基础】String, &String, &str, 字符串字面量 区别与联系
- 【Rust基础】生命周期 lifetime
- 【Rust基础】引用 & 详解,哪些地方会用到 &,各种场景举例详细说明
- 【Rust基础】&引用方式for循环遍历取 动态数组Vector 中的值时,有时候用 *,有时候不用 *,这是啥工作原理啊?for &n in &nums 是另一种写法(模式匹配)
- 【Rust基础】Copy、Clone 等 derive 的使用说明。。。String Copy的时候 为什么不能像手动 .clone() 样的效果呢,数据一起复制出来一份 ??
Rust调试日志
- 【Rust启动调试】Rust系统本地开发,如何实现Rust热更新重启? cargo watch
- 【Rust调试日志】print!宏打印结构体struct,首先派生derive调试模式:#[derive(Debug)] 和 {:?} 、{:#?}
- 【Rust调试日志】std::fmt::Display 有什么作用?为什么有“派生宏属性” #[derive(Debug)],但没有 #[derive(Display)]
Rust错误处理
- 【Rust错误处理】Result枚举 与可恢复的错误,Ok(T) 和 Err(E) —— 传播错误的简写:? 运算符 —— 最基础知识
- 【Rust错误处理】比较 .expect() 和 .unwrap() 错误处理方法
- 【Rust错误处理】.await.map_err( ) 方法的作用
- 【Rust错误处理】unwrap_or_else() 使用详解:Result、Option、默认值与错误处理 —— unwrap_or() 、unwrap_or_else() 、or_else() 、? 、unwrap_or_default() 、map_or_else()
- 【Rust错误处理】Option 方法 ok_or_else() 、ok_or() 使用详解 —— ok_or 、ok_or_else 、unwrap_or 、unwrap_or_else 、or_else 、map_or_else
- 【Rust错误处理】自定义错误类型示例,为什么是空实现:impl std::error::Error for ConfigError { }
- 【Rust错误处理】 std::error::Error 详解:自定义错误、错误链与 Box<dyn Error>
- 【Rust错误处理】impl From<DbErr> for AppError 错误自动转换 —— #[from] 、#[source]
- 【Rust错误处理】细说Rust错误处理
Rust指针
- 【Rust指针】智能指针 详解,Box::pin 是什么?—— Rc<T> 、RefCell<T> 、Rc<RefCell<T>> 、Weak<T> 、Arc<T> 、Arc<Mutex<T>> 、Arc<RwLock<T>>
- 【Rust指针】Box<dyn Trait> 是啥意思?有啥作用?举例详细说明
Rust路径处理
Rust文件处理
Salvo框架
- 【Salvo框架】基于 Rust Web 框架的通用项目结构模板
- 【Savlo框架】角色权限管理RBAC的实现方案,技术栈为:Salvo最新版 + Sqlx组件 + MySQL8.0 + Redis6
- 【Savlo框架】规划一个多应用项目目录结构,还会有前端模块
Axum框架
SeaORM
Rust编程指南
- 【Rust编程指南.01】基础数据类型:(1)标量类型 - 整数 / 浮点数 / 布尔类型 / 字符类型 (2)复合类型 - 元组类型 / 数组类型
- 【Rust编程指南.02】所有权:基础数据类型因实现了 Copy trait 特性,因此在给其他变量赋值后,其自身仍然可用
- 【Rust编程指南.03】字符串String,字符串字面量"abc",字符串slice切片类型:&str
- 【Rust编程指南.04】print!宏打印结构体struct,首先派生derive调试模式:#[derive(Debug)] 和 {:?} 、{:#?}
- 【Rust编程指南.05】通过struct定义结构体类型,无名字段的元组结构体,没有字段的单元结构体,结构体字段数据的所有权
- 【Rust编程指南.06】使用impl定义结构体struct方法,通过&self引用自身,通过双冒号::语法访问自定义的“关联函数”
- 【Rust编程指南.07】使用enum定义枚举,Option枚举:Some(T)和None
- 【Rust编程指南.08】通过match匹配出枚举enum中的绑定值,匹配 Option(T)、Some(T)
- 【Rust编程指南.09】通过 if let 匹配出枚举enum中的绑定值,匹配 Option(T)、Some(T)
- 【Rust编程指南.10】集合类型 之 动态数组 Vector
- 【Rust编程指南.11】集合类型 之 动态字符串 String
- 【Rust编程指南.12】错误处理:Result枚举 与可恢复的错误,Ok(T) 和 Err(E)
二、第三方【基础库】
错误处理
配置参数
Json对象
三、第三方【工具库】
数据结构
Rust+SQLx 脚手架:
- oganesson-rs:Rust Web开发脚手架,支持
actix-web、axum和salvo框架,并支持「单应用」和「多应用」模式
四、Rust电子书
| 序号 | 书名 | 链接 |
|---|---|---|
| 11 | 《Rust 程序设计语言》,中文出版书名译作《Rust权威指南》 | 查看 |
| 12 | 《通过例子学Rust》 | 查看 |
| 13 | 《Rust参考手册》 | 查看 |
| 14 | 《Rust Cookbook》 | 查看 |
| 15 | 《Rust版本指南》 | 查看 |
| 16 | 《Rust语言术语中英文对照表》 | 查看 |
| 17 | 《Rust 宏小册》 | 查看 |
| 21 | 《Awesome Rust (Rust 资源 | 学习 | 书 )》 是本人在学习使用 Rust 的时候,对 Rust 的一些难点的解决方法以及一些 Rust 开源的好玩的库、书籍、文章的一个整理,希望可以帮助更多的 Rust 初学者来翻过 Rust 这座大山 |
查看 |
| 22 | 《Awesome Rust》 一个精选的Rust代码和资源列表 |
查看 |
| 23 | 《100个练习题学习Rust》 练习的源码 | 查看 |
| 24 | 《Asynchronous Programming in Rust》 原版 | 查看 |
| 25 | 《Rust 异步编程指南》 | 查看 |
| 26 | 《Tokio异步编程》 | 查看 |
| 31 | 《Rust从入门到精通系列教程》 | 查看 |