rust 案例_深入浅出rust.pdf 高清版

【实例简介】

带书签

《深入浅出Rust》将详细描述Rust语言的基本语法,穿插讲解一部分高级使用技巧。第一部分介绍Rust基本语法。第二部分介绍属于Rust独一无二的内存管理方式。第三部分介绍Rust的抽象表达能力。第四部分介绍并发模型。第五部分介绍一些实用设施。

【实例截图】

【核心代码】

【相关目录】

目录

前言

第一部分 基础知识

第1章 与君初相见

1.1 版本和发布策略

1.2 安装开发环境

1.3 Hello World

1.4 Prelude

1.5 Format格式详细说明

第2章 变量和类型

2.1 变量声明

2.2 基本数据类型

2.3 复合数据类型

第3章 语句和表达式

3.1 语句

3.2 表达式

3.3 if-else

第4章 函数

4.1 简介

4.2 发散函数

4.3 main函数

4.4 const fn

4.5 函数递归调用

第5章 trait

5.1 成员方法

5.2 静态方法

5.3 扩展方法

5.4 完整函数调用语法

5.5 trait约束和继承

5.6 Derive

5.7 trait别名

5.8 标准库中常见的trait简介

5.9 总结

第6章 数组和字符串

6.1 数组

6.2 字符串

第7章 模式解构

7.1 简介

7.2 match

7.3 if-let和while-let

7.4 函数和闭包参数做模式解构

7.5 总结

第8章 深入类型系统

8.1 代数类型系统

8.2 Never Type

8.3 再谈Option类型

第9章 宏

9.1 简介macro

9.2 示范型宏

9.3 宏1.1

第二部分 内存安全

第10章 内存管理基础

10.1 堆和栈

10.2 段错误

10.3 内存安全

第11章 所有权和移动语义

11.1 什么是所有权

11.2 移动语义

11.3 复制语义

11.4 Box类型

11.5 Clone VS.Copy

11.6 析构函数

第12章 借用和生命周期

12.1 生命周期

12.2 借用

12.3 借用规则

12.4 生命周期标记

12.5 省略生命周期标记

第13章 借用检查

13.1 编译错误示例

13.2 内存不安全示例:修改枚举

13.3 内存不安全示例:迭代器失效

13.4 内存不安全示例:悬空指针

13.5 小结

第14章 NLL(Non-Lexical-Lifetime)

14.1 NLL希望解决的问题

14.2 NLL的原理

14.3 小结

第15章 内部可变性

15.1 Cell

15.2 RefCell

15.3 UnsafeCell

第16章 解引用

16.1 自定义解引用

16.2 自动解引用

16.3 自动解引用的用处

16.4 有时候需要手动处理

16.5 智能指针

16.6 小结

第17章 泄漏

17.1 内存泄漏

17.2 内存泄漏属于内存安全

17.3 析构函数泄漏

第18章 Panic

18.1 什么是panic

18.2 Panic实现机制

18.3 Panic Safety

18.4 小结

第19章 Unsafe

19.1 unsafe关键字

19.2 裸指针

19.3 内置函数

19.4 分割借用

19.5 协变

19.6 未定义行为

19.7 小结

第20章 Vec源码分析

20.1 内存申请

20.2 内存扩容

20.3 内存释放

20.4 不安全的边界

20.5 自定义解引用

20.6 迭代器

20.7 panic safety

第三部分 高级抽象

第21章 泛型

21.1 数据结构中的泛型

21.2 函数中的泛型

21.3 impl块中的泛型

21.4 泛型参数约束

21.5 关联类型

21.6 何时使用关联类型

21.7 泛型特化

第22章 闭包

22.1 变量捕获

22.2 move关键字

22.3 Fn/FnMut/FnOnce

22.4 闭包与泛型

22.5 闭包与生命周期

第23章 动态分派和静态分派

23.1 trait object

23.2 object safe

23.3 impl trait

第24章 容器与迭代器

24.1 容器

24.2 迭代器

第25章 生成器

25.1 简介

25.2 对比迭代器

25.3 对比立即求值

25.4 生成器的原理

25.5 协程简介

第26章 标准库简介

26.1 类型转换

26.2 运算符重载

26.3 I/O

26.4 Any

第四部分 线程安全

第27章 线程安全

27.1 什么是线程

27.2 启动线程

27.3 免数据竞争

27.4 Send & Sync

第28章 详解Send和Sync

28.1 什么是Send

28.2 什么是Sync

28.3 自动推理

28.4 小结

第29章 状态共享

29.1 Arc

29.2 Mutex

29.3 RwLock

29.4 Atomic

29.5 死锁

29.6 Barrier

29.7 Condvar

29.8 全局变量

29.9 线程局部存储

29.10 总结

第30章 管道

30.1 异步管道

30.2 同步管道

第31章 第三方并行开发库

31.1 threadpool

31.2 scoped-threadpool

31.3 parking_lot

31.4 crossbeam

31.5 rayon

第五部分 实用设施

第32章 项目和模块

32.1 cargo

32.2 项目依赖

32.3 模块管理

第33章 错误处理

33.1 基本错误处理

33.2 组合错误类型

33.3 问号运算符

33.4 main函数中使用问号运算符

33.5 新的Failure库

第34章 FFI

34.1 什么是FFI

34.2 从C调用Rust库

34.3 从Rust调用C库

34.4 更复杂的数据类型

第35章 文档和测试

35.1 文档

35.2 测试

附录 词汇表

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
深入浅出Rust》是一本介绍Rust语言的书籍。Rust是一种系统级编程语言,注重安全性、并发性和性能。本书旨在帮助读者了解Rust语言的基本特性和使用方法,从而能够编写高效、安全的软件。 该书的第一部分主要介绍了Rust的起源、设计理念和特点。它强调了Rust的安全性,包括内存安全、线程安全和并发安全。这对于编写可靠且高性能的软件至关重要。此外,书中还介绍了Rust的数据类型、模式匹配和错误处理等常用特性,帮助读者理解并正确使用Rust的语法。 第二部分聚焦于Rust的并发编程。Rust通过所有权系统和借用检查器,实现了内存安全和并发安全。这让开发者能够编写并发程序,而不用担心数据竞争和内存错误。在这一部分,读者将学习如何使用Rust的并发特性,包括线程和消息传递机制,从而编写可靠且高效的并发程序。 第三部分探讨了Rust的生态系统和实践。它介绍了使用Rust进行系统级编程和网络编程的实践经验,以及如何使用Rust与其他编程语言进行交互。此外,该书还介绍了一些Rust生态系统中常用的库和工具,如Cargo和Rustfmt等,这些工具能够提高开发效率。 总的来说,《深入浅出Rust》是一本全面介绍Rust语言的实用指南。无论你是初学者还是经验丰富的开发者,都可以从中获得对Rust的深入理解和应用。通过学习这本书,读者将能够使用Rust编写高性能、安全的软件,并充分发挥Rust语言的优势。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值