/RustPrimer

The Rust primer for beginners.

Primary LanguageRustGNU General Public License v2.0GPL-2.0

RustPrimer

The Rust primer for beginners. 给初学者的Rust中文教程。

协作规则

  1. 每个参与撰写的成员fork本项目,通过提pr的形式来协作书写;
  2. 本书源码使用markdown语法格式书写;
  3. 原则上每章(如有小节则每小节)对应独立的md文件;文件命名规则:章节号加名字,如第三章第二节03-02-emacs.md;
  4. 在本项目的issue区提issue来认领各自负责的章节,项目评审组审核后会在大纲每个章节标题后面,标注已由谁认领,预计什么时间完成;
  5. 本项目会组织评审委员会来负责审校内容质量,审核通过后,才会合并pr。

格式排版

  1. 按github上的markdown规范来;
  2. 中英文之间使用一个空格隔开。

写作要求

理论与实践结合,多举例,把事情讲清楚。必要时逐行分析,不怕啰嗦。要求描述精确,给出的示例尽量完整,能复制到文件中直接编译。所有给的例子,都要求能正常编译通过。举例的代码风格要符合官方规范,尽量消除警告。

时间规划

初步规划,在2016年2月29日之前,我们能完成第一版 v1.0。

大纲

  1. 初识Rust
  2. 安装Rust「marvin-min 160105」
  3. Linux
  4. Mac
  5. Windows
  6. 编辑器
  7. 前期准备「wayslog 160105」
  8. vim「wayslog 160105」
  9. emacs「tiansiyuan 160120」
  10. vscode「daogangtang 160105」
  11. atom「wayslog 160105」
  12. sublime
  13. visual studio
  14. eclipse
  15. Intellij IDEA
  16. spacemacs「wayslog 160105」
  17. Rust一小时快速入门「ee0703 160120」
  18. Cargo项目管理器、crate「fuyingfuying 160131」
  19. 基本程序结构「daogangtang 160131」
  20. 注释
  21. 条件
  22. 循环
  23. 基础类型和运算符「wayslog 160125」
  24. 基础类型
  25. 字符串类
  26. 基础运算符和字符串格式化
  27. 函数「qdao 160120」
  28. 模式匹配「andelf 160120」
  29. Trait (特征)「JohnSmithX 160130」
  30. 泛型「stormgbs 160120」
  31. 集合类型(Collections)「cai-lw 160205」
  32. 可变性、所有权、租借和生命期「stormgbs 160105」
  33. 闭包「qdao 160120」
  34. 迭代器「andelf 160120」
  35. 模块和包系统、Prelude「jessiex 160120」
  36. Option、Result与错误处理「JohnSmithX 160130」
  37. 宏系统「tennix 160222」
  38. 堆、栈与Box「tennix 160222」
  39. Rc, Arc, Mutex, RwLock, Cell, RefCell「daogangtang 160120」
  40. Rc, Arc
  41. Mutex, RwLock
  42. Cell, RefCell
  43. 通用引用类型 Borrow, AsRef, Into「daogangtang 160130」
  44. Marker: Send, Sync, Copy, Clone「daogangtang 160125」
  45. 多线程编程「anzhihun 160120」
  46. 并发「anzhihun 160120」
  47. 并行「anzhihun 160120」
  48. Unsafe、原始指针「JohnSmithX 160130」
  49. FFI「42 160222」
  50. 运算符重载「wayslog 160221」
  51. 属性和编译器参数「elton 160215」
  52. Cargo参数配置「fuyingfuying 160131」
  53. 测试与评测「daogangtang 160222」
  54. 测试 (testing)
  55. 评测 (benchmark)
  56. 代码风格「tiansiyuan」
  57. Any与反射
  58. 安全
  59. 常用数据结构实现
  60. 标准库介绍
  61. 操作系统与文件处理
  62. 时间日期处理
  63. 网络编程
  64. 实战篇
  65. 实战:Json处理
  66. 实战:Web 应用开发入门
  67. 实战:使用Postgresql数据库