添加难点详解专题目录

pull/89/head
sunface 3 years ago
parent 7ca031036a
commit ea642e7839

BIN
src/.DS_Store vendored

Binary file not shown.

@ -1,7 +1,7 @@
# Rust编程指南
[Rust编程指南](about.md)
[进入Rust语言世界](into-rust.md)
[Rust编程指南](about-book.md)
[进入Rust编程世界](into-rust.md)
## Getting started
@ -47,6 +47,11 @@
- [常用三方库列表(todo)](advance/utils.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)
- [命名规范](style-guide/naming.md)

@ -18,6 +18,17 @@
Rust的外部库层次不齐针对这一点我们根据功能分类推荐了相应的高质量开源库同时提供了基础的使用帮助。
**在学完这本书后,你也会随之完成数个小型项目**,例如其中一些是:
- Mandelbrot集合渲染
- 类Grep命令
- CPU模拟器
- 小型数据库
- 小型Redis
- HTTP等网络请求客户端
- 小型操作系统内核
从上面的列表可以看出学完本书不仅会教会你Rust语言还能学到系统编程和底层编程, 尽情享受奇妙的编程之旅吧。
#### 创作初心
还有很多,就不一一列举,等待大家自己去探索挖掘。 总之在写作过程中我们始终铭记初心:**为用户打造一本真正的Rust中文好书。 新手用来入门,老手用来提高,高手能用来提升生产力**。

@ -1 +1,46 @@
# introduction.md
# 进入Rust编程世界
## Rust发展历程
Rust 最早是 Mozilla 雇员 Graydon Hoare 的一个个人项目,从 2009 年开始,得到了 Mozilla 研究院的支助2010 年项目对外公布。2010 2011 年间实现的自举。从此以后Rust 经历了巨大的设计变化和反复(历程极其艰辛),终于在 2015 年 5 月 15日发布了 1.0 版。在这个研发过程中Rust 建立了一个强大活跃的社区形成了一整套完善稳定的项目贡献机制Rust能够飞速发展与这一点密不可分。Rust 现在由 [Rust项目开发者社区](https://github.com/rust-lang/rust)维护。
大家可能疑惑Rust为啥用了这么久才到1.0版本与之相比Go语言2009年发布却在2012年仅用3年就发布了1.0版本。首先是因为Rust语言特性较为复杂因此需要全盘考虑的问题非常多其次Rust当时的参与者太多了七嘴八舌的声音也很多导致了众口难调而Rust开发团队又非常重视社区的意见 最后一旦1.0快速发布那么后续大部分语言特性就无法再修改对于有完美强迫症的Rust开发者团队来说某种程度上的不完美是不可接受的。因此Rust语言用了足足6年时间才发布了尽善尽美的1.0版本。
## 使用现状
一般来说一门编程语言能在某一年成为全世界最受欢迎的语言那锣鼓喧天、昂首挺胸都是少不了的没办法能从全世界这么多编程语言中脱颖而出成为最受欢迎的语言属实困难。可是有一门语言它从发布1.0版本开始连续6年成为了全世界最受欢迎的语言是的它就是Rust,这不2021年又成为最受欢迎的语言了。
你可能会想既然这么受欢迎那肯定使用很广吧可惜现实给了我们重重一击在国外Rust尚且还行在各大公司的基础服务和底层都屡见身影在github上也算是呼风唤雨可是到了国内说句不好听的能听说过Rust大名的已经算百里挑一的优秀了就业环境更是糟糕。
如何改变这一切?这就是[RustCm](https://rust.cm)社区想做的事情,通过大家一起的努力,达成以下目标:
1. 输出**成体系的学习教程**大幅降低Rust的学习和使用难度
2. 打造**至少一个全民级项目**提升Rust在国内知名度
3. 建立一个持续活跃的社区为Rust用户提供一个交流、解惑的平台
其中第一点是尤为重要的只有一套成体系的学习教程才能让用户快速上手并且喜欢上Rust语言一旦粉丝效应形成那么Rust在国内的影响力就会在大家的自发宣传下迅速提升。
#### 国外
- AWS从2017年开始就用Rust实现了它们的无服务器计算平台 AWS Lambda 和 AWS Fargate, 并且用Rust重写了Bottlerocket OS和AWS Nitro系统这两个是弹性计算云(EC2)的重要服务
- Cloudflare也是Rust的重度用户DNS、无服务计算、网络包监控等灯
- Dropbox的底层存储服务完全由Rust重写达到了数万PB的规模
- Google除了在安卓系统的部分模块中使用Rust外还在它最新的操作系统fuchsia中重度使用Rust
- Facebook使用Rust来增强自己的网页端、移动端和API服务的性能同时还写了Hack编程语言的虚拟机部分模块
- Microsoft使用Rust为Azure平台实现了一些组件其中包括IoT服务的安全守护服务
- githu和npmjs.com使用Rust提供了高达每天13亿次的npm包下载数量
- Rust目前已经成为全世界区块链平台的首选开发语言
类似的还有很多总之Rust在国外的形式还是非常喜人的生态发展也异常迅速颇有燎原之火之势。
#### 国内
#### Github
Github上目前的优秀Rust项目还是很多的具体的可以在这里查看: https://github.com/topics/rust?l=rust里面的项目是按照star数降序排列。
## 适用人群
## Rust语言版本更新

@ -0,0 +1,3 @@
# 难点详解
本章重点针对Rust中一些难以理解的概念进行详细阐述例如Send & Sync, Pin & Unpin等。

@ -0,0 +1 @@
# 复杂的生命周期

@ -0,0 +1 @@
# Rc、Arc、Mutex、Rwlock

@ -9,3 +9,5 @@ Rust相关英文书籍
4. [Rust性能之书](https://nnethercote.github.io/perf-book/title-page.html)
5. [Rust异步编程](https://rust-lang.github.io/async-book/01_getting_started/01_chapter.html)
6. [Rust API Guidlines](https://rust-lang.github.io/api-guidelines/naming.html)
Loading…
Cancel
Save