From cb930bc8b7b8168e347c9678d0695baf09b725a3 Mon Sep 17 00:00:00 2001 From: sunface Date: Wed, 1 Dec 2021 15:54:00 +0800 Subject: [PATCH] update catalog according to philosophy --- src/.DS_Store | Bin 8196 -> 6148 bytes src/SUMMARY.md | 107 +++++++++++++------ src/advance/bypass-borrow.md | 1 - src/advance/errors.md | 1 - src/advance/macro.md | 1 - src/advance/tests.md | 1 - src/advance/threads.md | 1 - src/advance/utils.md | 12 --- src/async/concurrency-parallelism.md | 1 - src/async/intro.md | 1 - src/cargo/cache.md | 1 + src/cargo/cargo-toml-lock.md | 1 + src/cargo/commands.md | 1 + src/cargo/layout.md | 1 + src/cargo/workspace.md | 1 + src/{master => }/compiler/intro.md | 0 src/{master => }/compiler/phantom-data.md | 0 src/fight-with-compiler/intro.md | 1 + src/fight-with-compiler/lifetime.md | 1 + src/fight-with-compiler/phantom-data.md | 1 + src/fight-with-compiler/unconstrained.md | 1 + src/libraries/command/intro.md | 1 + src/libraries/command/structopt.md | 1 + src/libraries/http/intro.md | 1 + src/libraries/http/reqwest.md | 1 + src/libraries/intro.md | 1 + src/libraries/json/intro.md | 1 + src/libraries/json/serde.md | 1 + src/master/intro.md | 1 - src/memory/allocation.md | 1 + src/memory/intro.md | 3 + src/memory/layout.md | 1 + src/memory/pointer-ref.md | 1 + src/memory/uninit.md | 1 + src/memory/virtual.md | 1 + src/multi-threads/intro.md | 1 + src/multi-threads/message-passing.md | 1 + src/multi-threads/races.md | 1 + src/multi-threads/ref-counter-lock.md | 1 + src/multi-threads/send-sync.md | 1 + src/multi-threads/thread.md | 1 + src/networking/async/async-await.md | 1 + src/networking/async/future/future.md | 1 + src/networking/async/future/into.md | 1 + src/networking/async/future/multi-futures.md | 1 + src/networking/async/future/system-io.md | 1 + src/networking/async/future/task-excutor.md | 1 + src/networking/async/future/task-schedule.md | 1 + src/networking/async/future/workarounds.md | 1 + src/networking/async/http.md | 1 + src/networking/async/intro.md | 3 + src/networking/async/pin-unpin.md | 1 + src/networking/async/tokio/basic.md | 1 + src/networking/async/tokio/intro.md | 1 + src/networking/async/tokio/stream.md | 1 + src/networking/concurrency-parallelism.md | 1 + src/networking/intro.md | 1 + src/networking/tcp.md | 1 + src/obscure-concept/intro.md | 3 - src/obscure-concept/lifetime.md | 1 - src/obscure-concept/pin-unpin.md | 1 - src/obscure-concept/ref-counter-lock.md | 1 - src/obscure-concept/send-sync.md | 1 - src/smart-pointer/box.md | 1 + src/smart-pointer/deref-drop.md | 1 + src/smart-pointer/intro.md | 3 + src/smart-pointer/rc-refcell.md | 1 + src/smart-pointer/self-referrence.md | 1 + src/style-guide/code.md | 1 + src/templates/files/dir.md | 1 + src/templates/files/intro.md | 1 + src/templates/http/intro.md | 1 + src/templates/intro.md | 1 + src/third-party/intro.md | 1 - src/third-party/serde.md | 1 - src/use-case/intro.md | 1 - writing-material/{en_books.md => books.md} | 11 +- 77 files changed, 143 insertions(+), 66 deletions(-) delete mode 100644 src/advance/bypass-borrow.md delete mode 100644 src/advance/errors.md delete mode 100644 src/advance/macro.md delete mode 100644 src/advance/tests.md delete mode 100644 src/advance/threads.md delete mode 100644 src/advance/utils.md delete mode 100644 src/async/concurrency-parallelism.md delete mode 100644 src/async/intro.md create mode 100644 src/cargo/cache.md create mode 100644 src/cargo/cargo-toml-lock.md create mode 100644 src/cargo/commands.md create mode 100644 src/cargo/layout.md create mode 100644 src/cargo/workspace.md rename src/{master => }/compiler/intro.md (100%) rename src/{master => }/compiler/phantom-data.md (100%) create mode 100644 src/fight-with-compiler/intro.md create mode 100644 src/fight-with-compiler/lifetime.md create mode 100644 src/fight-with-compiler/phantom-data.md create mode 100644 src/fight-with-compiler/unconstrained.md create mode 100644 src/libraries/command/intro.md create mode 100644 src/libraries/command/structopt.md create mode 100644 src/libraries/http/intro.md create mode 100644 src/libraries/http/reqwest.md create mode 100644 src/libraries/intro.md create mode 100644 src/libraries/json/intro.md create mode 100644 src/libraries/json/serde.md delete mode 100644 src/master/intro.md create mode 100644 src/memory/allocation.md create mode 100644 src/memory/intro.md create mode 100644 src/memory/layout.md create mode 100644 src/memory/pointer-ref.md create mode 100644 src/memory/uninit.md create mode 100644 src/memory/virtual.md create mode 100644 src/multi-threads/intro.md create mode 100644 src/multi-threads/message-passing.md create mode 100644 src/multi-threads/races.md create mode 100644 src/multi-threads/ref-counter-lock.md create mode 100644 src/multi-threads/send-sync.md create mode 100644 src/multi-threads/thread.md create mode 100644 src/networking/async/async-await.md create mode 100644 src/networking/async/future/future.md create mode 100644 src/networking/async/future/into.md create mode 100644 src/networking/async/future/multi-futures.md create mode 100644 src/networking/async/future/system-io.md create mode 100644 src/networking/async/future/task-excutor.md create mode 100644 src/networking/async/future/task-schedule.md create mode 100644 src/networking/async/future/workarounds.md create mode 100644 src/networking/async/http.md create mode 100644 src/networking/async/intro.md create mode 100644 src/networking/async/pin-unpin.md create mode 100644 src/networking/async/tokio/basic.md create mode 100644 src/networking/async/tokio/intro.md create mode 100644 src/networking/async/tokio/stream.md create mode 100644 src/networking/concurrency-parallelism.md create mode 100644 src/networking/intro.md create mode 100644 src/networking/tcp.md delete mode 100644 src/obscure-concept/intro.md delete mode 100644 src/obscure-concept/lifetime.md delete mode 100644 src/obscure-concept/pin-unpin.md delete mode 100644 src/obscure-concept/ref-counter-lock.md delete mode 100644 src/obscure-concept/send-sync.md create mode 100644 src/smart-pointer/box.md create mode 100644 src/smart-pointer/deref-drop.md create mode 100644 src/smart-pointer/intro.md create mode 100644 src/smart-pointer/rc-refcell.md create mode 100644 src/smart-pointer/self-referrence.md create mode 100644 src/style-guide/code.md create mode 100644 src/templates/files/dir.md create mode 100644 src/templates/files/intro.md create mode 100644 src/templates/http/intro.md create mode 100644 src/templates/intro.md delete mode 100644 src/third-party/intro.md delete mode 100644 src/third-party/serde.md delete mode 100644 src/use-case/intro.md rename writing-material/{en_books.md => books.md} (55%) diff --git a/src/.DS_Store b/src/.DS_Store index 84be28864e11632ce20e011cdfa6105edfc42dd7..175a98d80b620d5e546333265b5f22a1e6fc2938 100644 GIT binary patch delta 107 zcmZp1XfcprU|?W$DortDU=RQ@Ie-{Mvv5r;6q~50$SAZiU^g?P&}JTi&CHX(3hPWP tlUdBp!6C>DR0IS9+(5z=q<&-Jcjn3bGM*sa3``J{K!!7Hj^~-f3;^mC5v~9L delta 195 zcmZoMXmOBWU|?W$DortDU;r^WfEYvza8E20o2aMAD6%nNH}hr%jz7$c**Q2SHn1>? zZ02Fv%&g7LP{NSGkjYTQkiwwLP{5D~WR);fdgkOOC*|ZPfy@A6N1*9^lee&&YjZG^ zG88kU0@Wr1)dE?lDj8)#D*uDQW*?qI%v=)OK>e;Dr)(DF_|80;U&M2=KMw~7BgB;q Ko8x)rFarRWQ7U-= diff --git a/src/SUMMARY.md b/src/SUMMARY.md index d53be574..e456670e 100644 --- a/src/SUMMARY.md +++ b/src/SUMMARY.md @@ -5,7 +5,7 @@ ## Getting started -- [牛刀小试](first-try/intro.md) +- [安装运行](first-try/intro.md) - [安装Rust环境(todo)](first-try/installation.md) - [墙推VSCode!(todo)](first-try/editor.md) - [认识Cargo(todo)](first-try/cargo.md) @@ -13,7 +13,7 @@ ## Rust学习三部曲 -- [基本概念](basic/intro.md) +- [基本语法](basic/intro.md) - [变量与绑定](basic/variable.md) - [基本类型(todo)](basic/type.md) - [复合类型(todo)](basic/compound-type.md) @@ -27,59 +27,102 @@ - [包和模块(todo)](basic/crate-module.md) - [语句与表达式(todo)](basic/statement-expression.md) -- [核心概念](core/intro.md) +- [核心语法](core/intro.md) - [所有权(todo)](core/ownership.md) - [借用(todo)](core/borrowing.md) - [生命周期(todo)](core/lifetime.md) -- [进阶编程](advance/intro.md) +- [进阶语法](advance/intro.md) - [泛型(todo)](advance/generitic.md) - [特征(todo)](advance/trait.md) - [迭代器(todo)](advance/interator.md) - [集合类型(todo)](advance/collection.md) - [函数式编程(todo)](advance/functional-programing.md) - [智能指针(todo)](advance/smart-pointer.md) - - [多线程(todo)](advance/threads.md) - - [测试(todo)](advance/tests.md) - - [错误处理(todo)](advance/errors.md) - - [宏(todo)](advance/macro.md) - - [Bypass Borrow Checker(todo)](advance/bypass-borrow.md) - - [常用三方库列表(todo)](advance/utils.md) - -## 该内容针对Rust非常高阶的水平,同时无需用专题形式来详述(参考[Rust高级编程](https://learnku.com/docs/nomicon/2018/310-phantom-data/4721?show_current_version=yes)) - -- [大师之路](master/intro.md) - - [对抗编译检查](master/compiler/intro.md) - - [幽灵数据](master/compiler/phantom-data.md) - -## 专题内容 -- [难点详解](obscure-concept/intro.md) - - [Send、Sync(todo)](obscure-concept/send-sync.md) - - [Pin、Unpin(todo)](obscure-concept/pin-unpin.md) - - [Rc、Arc、Mutex、Rwlock(todo)](obscure-concept/ref-counter-lock.md) - - [复杂的生命周期(todo)](obscure-concept/lifetime.md) - -- [代码风格](style-guide/intro.md) + + +## 专题内容,每个专题都配套一个小型项目进行实践 +- [智能指针](smart-pointer/intro.md) + - [Box对象(todo)](smart-pointer/box.md) + - [Deref和Drop特征(todo)](smart-pointer/deref-drop.md) + - [Rc与RefCell(todo)](smart-pointer/rc-refcell.md) + - [自引用与内存泄漏(todo)](smart-pointer/self-referrence.md) + +- [深入内存](memory/intro.md) + - [指针和引用(todo)](memory/pointer-ref.md) + - [未初始化内存(todo)](memory/uninit.md) + - [内存分配(todo)](memory/allocation.md) + - [内存布局(todo)](memory/layout.md) + - [虚拟内存(todo)](memory/virtual.md) + +- [对抗编译检查](fight-with-compiler/intro.md) + - [幽灵数据(todo)](fight-with-compiler/phantom-data.md) + - [生命周期(todo)](fight-with-compiler/lifetime.md) + - [类型未限制(todo)](fight-with-compiler/unconstrained.md) + +- [多线程](multi-threads/intro.md) + - [线程管理(todo)](multi-threads/thread.md) + - [消息传递(todo)](multi-threads/message-passing.md) + - [数据共享Arc、Mutex、Rwlock(todo)](multi-threads/ref-counter-lock.md) + - [数据竞争(todo)](multi-threads/races.md) + - [Send、Sync(todo)](multi-threads/send-sync.md) + +- [网络和异步编程](networking/intro.md) + - [TCP和网络原理(todo)](networking/tcp.md) + - [并发与并行(todo)](networking/concurrency-parallelism.md) + - [异步编程](networking/async/intro.md) + - [async/await语法](networking/async/async-await.md) + - [future详解](networking/async/future/into.md) + - [何为Future](networking/async/future/future.md) + - [任务调度](networking/async/future/task-schedule.md) + - [任务执行器](networking/async/future/task-excutor.md) + - [系统IO](networking/async/future/system-io.md) + - [执行多个Future](networking/async/future/multi-futures.md) + - [Pin、Unpin(todo)](networking/async/pin-unpin.md) + - [遇到不支持的异步特性?](networking/async/future/workarounds.md) + - [HTTP Client/Server](networking/async/http.md) + - [定海神针-tokio包](networking/async/tokio/intro.md) + - [基本用法](networking/async/tokio/basic.md) + - [异步消息流](networking/async/tokio/stream.md) + +- [代码规范](style-guide/intro.md) - [命名规范](style-guide/naming.md) + - [代码风格(todo)](style-guide/code.md) + - [面向对象](object-oriented/intro.md) - [OO所需的特性(todo)](object-oriented/characteristics.md) -- [异步编程](async/intro.md) - - [并发与并行(todo)](async/concurrency-parallelism.md) + - [Cargo详解](cargo/intro.md) + - [常用命令](cargo/commands.md) + - [项目结构](cargo/layout.md) + - [Cargo.toml和Cargo.lock](cargo/cargo-toml-lock.md) + - [构建缓存](cargo/cache.md) + - [工作空间](cargo/workspace.md) - [配置参数(todo)](cargo/manifest.md) + - [性能调优](performance/intro.md) - [Benchmark性能测试(todo)](performance/benchmark.md) - [减少Runtime check(todo)](performance/runtime-check.md) + - [Unsafe](unsafe/intro.md) - [原始指针(todo)](unsafe/raw-pointer.md) + - [宏编程](macro/intro.md) - [过程宏(todo)](macro/procedure-macro.md) -- [常用三方库](third-party/intro.md) - - [serde(todo)](third-party/serde.md) - + +- [常用三方库](libraries/intro.md) + - [JSON](libraries/json/intro.md) + - [serde(todo)](libraries/json/serde.md) + - [HTTP](libraries/http/intro.md) + - [reqwest(todo)](libraries/http/reqwest.md) + - [命令行解析](libraries/command/intro.md) + - [structopt(todo)](libraries/command/structopt.md) + ## 场景模版 - -- [场景示例(todo)](use-case/intro.md) +- [场景模版](templates/intro.md) + - [文件操作](templates/files/intro.md) + - [目录(todo)](templates/files/dir.md) + - [Http请求(todo)](templates/http/intro.md) ## 附录 diff --git a/src/advance/bypass-borrow.md b/src/advance/bypass-borrow.md deleted file mode 100644 index 2ce1ba72..00000000 --- a/src/advance/bypass-borrow.md +++ /dev/null @@ -1 +0,0 @@ -# 绕过借用检查 \ No newline at end of file diff --git a/src/advance/errors.md b/src/advance/errors.md deleted file mode 100644 index 36a1c2bc..00000000 --- a/src/advance/errors.md +++ /dev/null @@ -1 +0,0 @@ -# errors.md \ No newline at end of file diff --git a/src/advance/macro.md b/src/advance/macro.md deleted file mode 100644 index 11b2ee8f..00000000 --- a/src/advance/macro.md +++ /dev/null @@ -1 +0,0 @@ -# macro.md \ No newline at end of file diff --git a/src/advance/tests.md b/src/advance/tests.md deleted file mode 100644 index de3b8613..00000000 --- a/src/advance/tests.md +++ /dev/null @@ -1 +0,0 @@ -# tests.md \ No newline at end of file diff --git a/src/advance/threads.md b/src/advance/threads.md deleted file mode 100644 index b0bb675f..00000000 --- a/src/advance/threads.md +++ /dev/null @@ -1 +0,0 @@ -# threads.md \ No newline at end of file diff --git a/src/advance/utils.md b/src/advance/utils.md deleted file mode 100644 index 2c840660..00000000 --- a/src/advance/utils.md +++ /dev/null @@ -1,12 +0,0 @@ -## 常用三方库 - -本章节对在日常开发中我们会用到的三方库进行简单介绍,详细使用介绍请参看 - -### JSON -1. [serde](https://github.com/serde-rs/serde) - -### 命令行参数和配置 -1. [structopt](https://github.com/TeXitoi/structopt) - -### HTTP client -1. [reqwest](https://github.com/seanmonstar/reqwest) \ No newline at end of file diff --git a/src/async/concurrency-parallelism.md b/src/async/concurrency-parallelism.md deleted file mode 100644 index d0f0f892..00000000 --- a/src/async/concurrency-parallelism.md +++ /dev/null @@ -1 +0,0 @@ -# 并发与并行 \ No newline at end of file diff --git a/src/async/intro.md b/src/async/intro.md deleted file mode 100644 index 3f25f2e5..00000000 --- a/src/async/intro.md +++ /dev/null @@ -1 +0,0 @@ -# concurrency \ No newline at end of file diff --git a/src/cargo/cache.md b/src/cargo/cache.md new file mode 100644 index 00000000..d6b6fcdc --- /dev/null +++ b/src/cargo/cache.md @@ -0,0 +1 @@ +# 构建缓存 diff --git a/src/cargo/cargo-toml-lock.md b/src/cargo/cargo-toml-lock.md new file mode 100644 index 00000000..77e1c3a0 --- /dev/null +++ b/src/cargo/cargo-toml-lock.md @@ -0,0 +1 @@ +# Cargo.toml和Cargo.lock diff --git a/src/cargo/commands.md b/src/cargo/commands.md new file mode 100644 index 00000000..aa1e2035 --- /dev/null +++ b/src/cargo/commands.md @@ -0,0 +1 @@ +# 常用命令 diff --git a/src/cargo/layout.md b/src/cargo/layout.md new file mode 100644 index 00000000..55043883 --- /dev/null +++ b/src/cargo/layout.md @@ -0,0 +1 @@ +# 项目结构 diff --git a/src/cargo/workspace.md b/src/cargo/workspace.md new file mode 100644 index 00000000..b0c4db71 --- /dev/null +++ b/src/cargo/workspace.md @@ -0,0 +1 @@ +# 工作空间 diff --git a/src/master/compiler/intro.md b/src/compiler/intro.md similarity index 100% rename from src/master/compiler/intro.md rename to src/compiler/intro.md diff --git a/src/master/compiler/phantom-data.md b/src/compiler/phantom-data.md similarity index 100% rename from src/master/compiler/phantom-data.md rename to src/compiler/phantom-data.md diff --git a/src/fight-with-compiler/intro.md b/src/fight-with-compiler/intro.md new file mode 100644 index 00000000..e02549bf --- /dev/null +++ b/src/fight-with-compiler/intro.md @@ -0,0 +1 @@ +# 对抗编译检查 diff --git a/src/fight-with-compiler/lifetime.md b/src/fight-with-compiler/lifetime.md new file mode 100644 index 00000000..8bbf077a --- /dev/null +++ b/src/fight-with-compiler/lifetime.md @@ -0,0 +1 @@ +# 生命周期(todo) diff --git a/src/fight-with-compiler/phantom-data.md b/src/fight-with-compiler/phantom-data.md new file mode 100644 index 00000000..719a406f --- /dev/null +++ b/src/fight-with-compiler/phantom-data.md @@ -0,0 +1 @@ +# 幽灵数据 diff --git a/src/fight-with-compiler/unconstrained.md b/src/fight-with-compiler/unconstrained.md new file mode 100644 index 00000000..1ede406c --- /dev/null +++ b/src/fight-with-compiler/unconstrained.md @@ -0,0 +1 @@ +# 类型未限制 diff --git a/src/libraries/command/intro.md b/src/libraries/command/intro.md new file mode 100644 index 00000000..64833703 --- /dev/null +++ b/src/libraries/command/intro.md @@ -0,0 +1 @@ +# 命令行解析 diff --git a/src/libraries/command/structopt.md b/src/libraries/command/structopt.md new file mode 100644 index 00000000..99a3f509 --- /dev/null +++ b/src/libraries/command/structopt.md @@ -0,0 +1 @@ +# structopt(todo) diff --git a/src/libraries/http/intro.md b/src/libraries/http/intro.md new file mode 100644 index 00000000..e461677b --- /dev/null +++ b/src/libraries/http/intro.md @@ -0,0 +1 @@ +# Http diff --git a/src/libraries/http/reqwest.md b/src/libraries/http/reqwest.md new file mode 100644 index 00000000..380372cf --- /dev/null +++ b/src/libraries/http/reqwest.md @@ -0,0 +1 @@ +# reqwest(todo) diff --git a/src/libraries/intro.md b/src/libraries/intro.md new file mode 100644 index 00000000..68a6377e --- /dev/null +++ b/src/libraries/intro.md @@ -0,0 +1 @@ +# 常用三方库 diff --git a/src/libraries/json/intro.md b/src/libraries/json/intro.md new file mode 100644 index 00000000..c047bdbd --- /dev/null +++ b/src/libraries/json/intro.md @@ -0,0 +1 @@ +# Json diff --git a/src/libraries/json/serde.md b/src/libraries/json/serde.md new file mode 100644 index 00000000..3a759866 --- /dev/null +++ b/src/libraries/json/serde.md @@ -0,0 +1 @@ +# serde(todo) diff --git a/src/master/intro.md b/src/master/intro.md deleted file mode 100644 index b0d83fca..00000000 --- a/src/master/intro.md +++ /dev/null @@ -1 +0,0 @@ -# 大师之路 diff --git a/src/memory/allocation.md b/src/memory/allocation.md new file mode 100644 index 00000000..6d69fa0c --- /dev/null +++ b/src/memory/allocation.md @@ -0,0 +1 @@ +# 内存分配(todo) diff --git a/src/memory/intro.md b/src/memory/intro.md new file mode 100644 index 00000000..76dbeb65 --- /dev/null +++ b/src/memory/intro.md @@ -0,0 +1,3 @@ +# 深入内存 + +部分内容借鉴了Rust in action和Rust高级编程 \ No newline at end of file diff --git a/src/memory/layout.md b/src/memory/layout.md new file mode 100644 index 00000000..492cb23b --- /dev/null +++ b/src/memory/layout.md @@ -0,0 +1 @@ +# 内存布局(todo) diff --git a/src/memory/pointer-ref.md b/src/memory/pointer-ref.md new file mode 100644 index 00000000..125482ab --- /dev/null +++ b/src/memory/pointer-ref.md @@ -0,0 +1 @@ +# 指针和引用(todo) diff --git a/src/memory/uninit.md b/src/memory/uninit.md new file mode 100644 index 00000000..73d3ad92 --- /dev/null +++ b/src/memory/uninit.md @@ -0,0 +1 @@ +# 未初始化内存 diff --git a/src/memory/virtual.md b/src/memory/virtual.md new file mode 100644 index 00000000..1607d150 --- /dev/null +++ b/src/memory/virtual.md @@ -0,0 +1 @@ +# 虚拟内存 diff --git a/src/multi-threads/intro.md b/src/multi-threads/intro.md new file mode 100644 index 00000000..b263d3b6 --- /dev/null +++ b/src/multi-threads/intro.md @@ -0,0 +1 @@ +# 多线程 diff --git a/src/multi-threads/message-passing.md b/src/multi-threads/message-passing.md new file mode 100644 index 00000000..01fa0785 --- /dev/null +++ b/src/multi-threads/message-passing.md @@ -0,0 +1 @@ +# 消息传递(todo) diff --git a/src/multi-threads/races.md b/src/multi-threads/races.md new file mode 100644 index 00000000..d540f925 --- /dev/null +++ b/src/multi-threads/races.md @@ -0,0 +1 @@ +# 数据竞争 diff --git a/src/multi-threads/ref-counter-lock.md b/src/multi-threads/ref-counter-lock.md new file mode 100644 index 00000000..9d6f2687 --- /dev/null +++ b/src/multi-threads/ref-counter-lock.md @@ -0,0 +1 @@ +# Rc、Arc、Mutex、Rwlock(todo) diff --git a/src/multi-threads/send-sync.md b/src/multi-threads/send-sync.md new file mode 100644 index 00000000..d32b59c3 --- /dev/null +++ b/src/multi-threads/send-sync.md @@ -0,0 +1 @@ +# Send、Sync(todo) diff --git a/src/multi-threads/thread.md b/src/multi-threads/thread.md new file mode 100644 index 00000000..4d8ccb00 --- /dev/null +++ b/src/multi-threads/thread.md @@ -0,0 +1 @@ +# 线程管理(todo) diff --git a/src/networking/async/async-await.md b/src/networking/async/async-await.md new file mode 100644 index 00000000..6fc5a8f4 --- /dev/null +++ b/src/networking/async/async-await.md @@ -0,0 +1 @@ +# async/await语法 diff --git a/src/networking/async/future/future.md b/src/networking/async/future/future.md new file mode 100644 index 00000000..bdcd6fa2 --- /dev/null +++ b/src/networking/async/future/future.md @@ -0,0 +1 @@ +# Future特征 diff --git a/src/networking/async/future/into.md b/src/networking/async/future/into.md new file mode 100644 index 00000000..cf4e3f37 --- /dev/null +++ b/src/networking/async/future/into.md @@ -0,0 +1 @@ +# future详解 diff --git a/src/networking/async/future/multi-futures.md b/src/networking/async/future/multi-futures.md new file mode 100644 index 00000000..ccfdd486 --- /dev/null +++ b/src/networking/async/future/multi-futures.md @@ -0,0 +1 @@ +# 执行多个Future diff --git a/src/networking/async/future/system-io.md b/src/networking/async/future/system-io.md new file mode 100644 index 00000000..0a67f0d5 --- /dev/null +++ b/src/networking/async/future/system-io.md @@ -0,0 +1 @@ +# 系统IO diff --git a/src/networking/async/future/task-excutor.md b/src/networking/async/future/task-excutor.md new file mode 100644 index 00000000..13d724ed --- /dev/null +++ b/src/networking/async/future/task-excutor.md @@ -0,0 +1 @@ +# 任务执行器 diff --git a/src/networking/async/future/task-schedule.md b/src/networking/async/future/task-schedule.md new file mode 100644 index 00000000..bc04b734 --- /dev/null +++ b/src/networking/async/future/task-schedule.md @@ -0,0 +1 @@ +# 任务调度 diff --git a/src/networking/async/future/workarounds.md b/src/networking/async/future/workarounds.md new file mode 100644 index 00000000..632ebacd --- /dev/null +++ b/src/networking/async/future/workarounds.md @@ -0,0 +1 @@ +# 遇到不支持的异步特性? diff --git a/src/networking/async/http.md b/src/networking/async/http.md new file mode 100644 index 00000000..087b4c31 --- /dev/null +++ b/src/networking/async/http.md @@ -0,0 +1 @@ +# HTTP Client/Server diff --git a/src/networking/async/intro.md b/src/networking/async/intro.md new file mode 100644 index 00000000..1cf6c242 --- /dev/null +++ b/src/networking/async/intro.md @@ -0,0 +1,3 @@ +# 异步编程 + +https://rust-lang.github.io/async-book/01_getting_started/03_state_of_async_rust.html \ No newline at end of file diff --git a/src/networking/async/pin-unpin.md b/src/networking/async/pin-unpin.md new file mode 100644 index 00000000..8c817489 --- /dev/null +++ b/src/networking/async/pin-unpin.md @@ -0,0 +1 @@ +# Pin、Unpin(todo) diff --git a/src/networking/async/tokio/basic.md b/src/networking/async/tokio/basic.md new file mode 100644 index 00000000..749eb9a3 --- /dev/null +++ b/src/networking/async/tokio/basic.md @@ -0,0 +1 @@ +# 基本用法 diff --git a/src/networking/async/tokio/intro.md b/src/networking/async/tokio/intro.md new file mode 100644 index 00000000..f07cf621 --- /dev/null +++ b/src/networking/async/tokio/intro.md @@ -0,0 +1 @@ +# 定海神针-tokio包 diff --git a/src/networking/async/tokio/stream.md b/src/networking/async/tokio/stream.md new file mode 100644 index 00000000..50293a3d --- /dev/null +++ b/src/networking/async/tokio/stream.md @@ -0,0 +1 @@ +# 异步消息流 diff --git a/src/networking/concurrency-parallelism.md b/src/networking/concurrency-parallelism.md new file mode 100644 index 00000000..d9346343 --- /dev/null +++ b/src/networking/concurrency-parallelism.md @@ -0,0 +1 @@ +# 并发与并行(todo) diff --git a/src/networking/intro.md b/src/networking/intro.md new file mode 100644 index 00000000..8859a9ce --- /dev/null +++ b/src/networking/intro.md @@ -0,0 +1 @@ +# 网络和异步编程 diff --git a/src/networking/tcp.md b/src/networking/tcp.md new file mode 100644 index 00000000..689813ea --- /dev/null +++ b/src/networking/tcp.md @@ -0,0 +1 @@ +# TCP和网络原理(todo) diff --git a/src/obscure-concept/intro.md b/src/obscure-concept/intro.md deleted file mode 100644 index acfab41a..00000000 --- a/src/obscure-concept/intro.md +++ /dev/null @@ -1,3 +0,0 @@ -# 难点详解 - -本章重点针对Rust中一些难以理解的概念进行详细阐述,例如Send & Sync, Pin & Unpin等。 \ No newline at end of file diff --git a/src/obscure-concept/lifetime.md b/src/obscure-concept/lifetime.md deleted file mode 100644 index 12f3707c..00000000 --- a/src/obscure-concept/lifetime.md +++ /dev/null @@ -1 +0,0 @@ -# 复杂的生命周期 diff --git a/src/obscure-concept/pin-unpin.md b/src/obscure-concept/pin-unpin.md deleted file mode 100644 index 82414ae1..00000000 --- a/src/obscure-concept/pin-unpin.md +++ /dev/null @@ -1 +0,0 @@ -# Pin、Unpin diff --git a/src/obscure-concept/ref-counter-lock.md b/src/obscure-concept/ref-counter-lock.md deleted file mode 100644 index cc0e1f4d..00000000 --- a/src/obscure-concept/ref-counter-lock.md +++ /dev/null @@ -1 +0,0 @@ -# Rc、Arc、Mutex、Rwlock diff --git a/src/obscure-concept/send-sync.md b/src/obscure-concept/send-sync.md deleted file mode 100644 index de539e99..00000000 --- a/src/obscure-concept/send-sync.md +++ /dev/null @@ -1 +0,0 @@ -# Send、Sync diff --git a/src/smart-pointer/box.md b/src/smart-pointer/box.md new file mode 100644 index 00000000..36c536ba --- /dev/null +++ b/src/smart-pointer/box.md @@ -0,0 +1 @@ +# Box对象(todo) diff --git a/src/smart-pointer/deref-drop.md b/src/smart-pointer/deref-drop.md new file mode 100644 index 00000000..f818d9ce --- /dev/null +++ b/src/smart-pointer/deref-drop.md @@ -0,0 +1 @@ +# Deref和Drop特征(todo) diff --git a/src/smart-pointer/intro.md b/src/smart-pointer/intro.md new file mode 100644 index 00000000..1ad6265b --- /dev/null +++ b/src/smart-pointer/intro.md @@ -0,0 +1,3 @@ +# 智能指针 + +部分内容借鉴了Rust book \ No newline at end of file diff --git a/src/smart-pointer/rc-refcell.md b/src/smart-pointer/rc-refcell.md new file mode 100644 index 00000000..2b8bcc3b --- /dev/null +++ b/src/smart-pointer/rc-refcell.md @@ -0,0 +1 @@ +# Rc与RefCell(todo) diff --git a/src/smart-pointer/self-referrence.md b/src/smart-pointer/self-referrence.md new file mode 100644 index 00000000..68a2e59a --- /dev/null +++ b/src/smart-pointer/self-referrence.md @@ -0,0 +1 @@ +# 自引用与内存泄漏 diff --git a/src/style-guide/code.md b/src/style-guide/code.md new file mode 100644 index 00000000..c87d2bcd --- /dev/null +++ b/src/style-guide/code.md @@ -0,0 +1 @@ +# 代码风格(todo) diff --git a/src/templates/files/dir.md b/src/templates/files/dir.md new file mode 100644 index 00000000..8cd64508 --- /dev/null +++ b/src/templates/files/dir.md @@ -0,0 +1 @@ +# 目录 diff --git a/src/templates/files/intro.md b/src/templates/files/intro.md new file mode 100644 index 00000000..e3b630ee --- /dev/null +++ b/src/templates/files/intro.md @@ -0,0 +1 @@ +# 文件操作 diff --git a/src/templates/http/intro.md b/src/templates/http/intro.md new file mode 100644 index 00000000..b1484d5f --- /dev/null +++ b/src/templates/http/intro.md @@ -0,0 +1 @@ +# Http请求 diff --git a/src/templates/intro.md b/src/templates/intro.md new file mode 100644 index 00000000..698a372a --- /dev/null +++ b/src/templates/intro.md @@ -0,0 +1 @@ +# 场景模版 diff --git a/src/third-party/intro.md b/src/third-party/intro.md deleted file mode 100644 index ae2a8230..00000000 --- a/src/third-party/intro.md +++ /dev/null @@ -1 +0,0 @@ -## 常用三方库 \ No newline at end of file diff --git a/src/third-party/serde.md b/src/third-party/serde.md deleted file mode 100644 index 7f5526fd..00000000 --- a/src/third-party/serde.md +++ /dev/null @@ -1 +0,0 @@ -## serde \ No newline at end of file diff --git a/src/use-case/intro.md b/src/use-case/intro.md deleted file mode 100644 index 0b03bc6f..00000000 --- a/src/use-case/intro.md +++ /dev/null @@ -1 +0,0 @@ -# 场景用例 \ No newline at end of file diff --git a/writing-material/en_books.md b/writing-material/books.md similarity index 55% rename from writing-material/en_books.md rename to writing-material/books.md index 6f592c75..83b0908f 100644 --- a/writing-material/en_books.md +++ b/writing-material/books.md @@ -1,8 +1,6 @@ -Rust相关英文书籍 +## 本书参考的书籍 -1. [Rust语言基础教学](https://doc.rust-lang.org/book/) - -2. [Rust语言示例](https://doc.rust-lang.org/stable/rust-by-example/index.html) +1. [Rust语言](https://rustwiki.org/zh-CN/book/) 3. [Cargo教学](https://doc.rust-lang.org/cargo/index.html) @@ -13,3 +11,8 @@ Rust相关英文书籍 6. [Rust API Guidlines](https://rust-lang.github.io/api-guidelines/naming.html) 7. [Rust in action](https://livebook.manning.com/book/rust-in-action/chapter-5/) + - [示例](https://github.com/barabadzhi/rust-in-action) + +8. [Rust高级编程](https://learnku.com/docs/nomicon/2018/310-phantom-data/4721?show_current_version=yes) + +9. [Rust Primer](https://rustcc.gitbooks.io/rustprimer/content/1st-glance/) \ No newline at end of file