The Rust primer for beginners. 给初学者的Rust中文教程。
- 每个参与撰写的成员fork本项目,通过提pr的形式来协作书写;
- 本书源码使用markdown语法格式书写;
- 原则上每章(如有小节则每小节)对应独立的md文件;文件命名规则:章节号加名字,如第三章第二节03-02-emacs.md;
- 在本项目的issue区提issue来认领各自负责的章节,项目评审组审核后会在大纲每个章节标题后面,标注已由谁认领,预计什么时间完成;
- 本项目会组织评审委员会来负责审校内容质量,审核通过后,才会合并pr。
- 按github上的markdown规范来;
- 中英文之间使用一个空格隔开。
理论与实践结合,多举例,把事情讲清楚。必要时逐行分析,不怕啰嗦。要求描述精确,给出的示例尽量完整,能复制到文件中直接编译。所有给的例子,都要求能正常编译通过。举例的代码风格要符合官方规范,尽量消除警告。
初步规划,在2016年2月29日之前,我们能完成第一版 v1.0。
- 初识Rust
- 安装Rust「marvin-min 160105」
- Linux
- Mac
- Windows
- 编辑器
- 前期准备「wayslog 160105」
- vim「wayslog 160105」
- emacs「tiansiyuan 160120」
- vscode「daogangtang 160105」
- atom「wayslog 160105」
- sublime
- visual studio
- eclipse
- Intellij IDEA
- spacemacs「wayslog 160105」
- Rust一小时快速入门「ee0703 160120」
- Cargo项目管理器、crate「fuyingfuying 160131」
- 基本程序结构「daogangtang 160131」
- 注释
- 条件
- 循环
- 基础类型和运算符「wayslog 160125」
- 基础类型
- 字符串类
- 基础运算符和字符串格式化
- 函数「qdao 160120」
- 模式匹配「andelf 160120」
- Trait (特征)「JohnSmithX 160130」
- 泛型「stormgbs 160120」
- 集合类型(Collections)「cai-lw 160205」
- 可变性、所有权、租借和生命期「stormgbs 160105」
- 闭包「qdao 160120」
- 迭代器「andelf 160120」
- 模块和包系统、Prelude「jessiex 160120」
- Option、Result与错误处理「JohnSmithX 160130」
- 宏系统「tennix 160222」
- 堆、栈与Box「tennix 160222」
- Rc, Arc, Mutex, RwLock, Cell, RefCell「daogangtang 160120」
- Rc, Arc
- Mutex, RwLock
- Cell, RefCell
- 通用引用类型 Borrow, AsRef, Into「daogangtang 160130」
- Marker: Send, Sync, Copy, Clone「daogangtang 160125」
- 多线程编程「anzhihun 160120」
- 并发「anzhihun 160120」
- 并行「anzhihun 160120」
- Unsafe、原始指针「JohnSmithX 160130」
- FFI「42 160222」
- 运算符重载「wayslog 160221」
- 属性和编译器参数「elton 160215」
- Cargo参数配置「fuyingfuying 160131」
- 测试与评测「daogangtang 160222」
- 测试 (testing)
- 评测 (benchmark)
- 代码风格「tiansiyuan」
- Any与反射
- 安全
- 常用数据结构实现
- 标准库介绍
- 操作系统与文件处理
- 时间日期处理
- 网络编程
- 实战篇
- 实战:Json处理
- 实战:Web 应用开发入门
- 实战:使用Postgresql数据库