超值优惠券
¥50
100可用 有效期2天

全场图书通用(淘书团除外)

不再提示
关闭
图书盲袋,以书为“药”
欢迎光临中图网 请 | 注册

Rust项目开发实战

出版社:清华大学出版社出版时间:2022-07-01
开本: 其他 页数: 312
中 图 价:¥77.4(7.1折) 定价  ¥109.0 登录后可看到会员价
加入购物车 收藏
运费6元,满39元免运费
?新疆、西藏除外
本类五星书更多>

Rust项目开发实战 版权信息

Rust项目开发实战 本书特色

《Rust项目开发实战》理论结合项目实战,展示一些十分有趣、实用的库和框架,Rust程序员可免费使用以构建项目,如前端和后端Web应用程序、游戏、解释器、编译器、计算机模拟器和Linux可加载的模块。

Rust项目开发实战 内容简介

《Rust项目开发实战》详细阐述了与Rust语言开发相关的基本解决方案,主要包括Rust语言简介、存储和检索数据、创建REST Web服务、创建完整的服务器端Web应用程序、利用Yew创建客户端WebAssembly应用程序、利用quicksilver创建WebAssembly游戏、利用ggez创建2D桌面游戏、解释和编译所用的解析器组合器、使用Nom创建计算机模拟器、创建Linux内核模块、Rust语言的未来等内容。此外,本书还提供了相应的示例、代码,以帮助读者进一步理解相关方案的实现过程。

Rust项目开发实战 目录

第1章 Rust语言简介 1

1.1 技术需求 1

1.2 了解Rust的不同版本 1

1.3 项目 4

1.4 运行本书示例 6

1.5 一些实用程序库 6

1.5.1 伪随机数生成器—rand库 6

1.5.2 日志机制—log库 7

1.5.3 在运行期初始化静态变量—lazy_static库 8

1.5.4 解析命令行—structopt库 9

1.6 本章小结 10

1.7 本章练习 10

第2章 存储和检索数据 13

2.1 技术需求 13

2.2 项目概览 14

2.3 读取TOML文件 14

2.3.1 使用toml_dynamic 15

2.3.2 使用toml_static 17

2.4 读写JSON文件 18

2.4.1 json_dynamic项目 20

2.4.2 json_static项目 21

2.5 读取XML文件 21

2.6 访问数据库 23

2.7 访问SQLite数据库 24

2.8 访问PostgreSQL数据库 27

2.9 在Redis中存储和检索数据 29

2.10 整合方案 31

2.11 本章小结 31

2.12 本章练习 32

第3章 创建REST Web服务 33

3.1 技术需求 33

3.2 REST体系结构 34

3.3 项目概览 35

3.4 背景知识和上下文环境 35

3.5 构建REST Web服务的存根程序 37

3.5.1 运行和测试服务 37

3.5.2 利用GET方法获取资源 37

3.5.3 利用PUT方法向服务发送命名资源 38

3.5.4 利用POST方法向服务器传递新资源 39

3.5.5 利用DELETE方法删除资源 39

3.5.6 发送无效的命令 40

3.5.7 实现代码 40

3.6 构建完整的Web服务 44

3.6.1 下载文件 44

3.6.2 将字符串上传至指定文件 45

3.6.3 将字符串上传至新文件中 45

3.6.4 删除一个文件 46

3.6.5 代码实现 46

3.7 构建状态服务器 49

3.7.1 有状态服务器 50

3.7.2 服务API 51

3.7.3 测试服务 52

3.7.4 实现数据库 53

3.7.5 处理查询 53

3.8 返回JSON数据 54

3.9 本章小结 55

3.10 本章练习 55

3.11 进一步阅读 56

第4章 创建完整的服务器端Web应用程序 57

4.1 技术需求 57

4.2 Web应用程序的定义 57

4.3 了解Web应用程序的行为 58

4.4 项目概览 60

4.5 使用Tera模板引擎 61

4.6 简单的用户列表 67

4.6.1 模板文件夹 69

4.6.2 其他Rust处理程序 72

4.7 CRUD应用程序 74

4.7.1 处理JavaScript代码 76

4.7.2 HTML代码 77

4.7.3 Rust代码 78

4.8 利用身份验证处理应用程序 83

4.8.1 实现过程 85

4.8.2 HTML代码 85

4.8.3 JavaScript代码 87

4.8.4 模拟数据库代码 87

4.8.5 main函数 88

4.9 本章小结 90

4.10 本章练习 91

4.11 进一步阅读 91

第5章 利用Yew创建客户端WebAssembly 应用程序 93

5.1 技术需求 93

5.2 Wasm简介 94

5.3 理解MVC架构模式 94

5.3.1 实现两种Web应用程序 95

5.3.2 MVC模式 96

5.3.3 模型 96

5.3.4 视图 97

5.3.5 控制器 97

5.3.6 视图实现 98

5.3.7 控制器实现 98

5.3.8 理解MVC架构 99

5.4 项目简述 100

5.5 incr应用程序 100

5.6 adder应用程序 104

5.7 login应用程序 106

5.7.1 项目组织方式 107

5.7.2 db_access.rs文件 108

5.7.3 main.rs文件 109

5.7.4 login.rs文件 112

5.8 yauth应用程序 115

5.8.1 理解应用程序的行为 115

5.8.2 项目的组织方式 116

5.8.3 不可针对filtered_persons使用空集合 118

5.8.4 one_person.rs文件 122

5.9 访问RESTful服务的Web应用程序 124

5.9.1 persons_db应用程序 125

5.9.2 yclient应用程序 126

5.10 本章小结 131

5.11 本章练习 132

5.12 进一步阅读 132

第6章 利用quicksilver创建WebAssembly游戏 135

6.1 技术需求 135

6.2 项目简介 136

6.3 理解动画循环架构 136

6.4 实现ski项目 139

6.5 实现silent_slalom项目 144

6.6 实现assets_slalom项目 152

6.7 本章小结 157

6.8 本章练习 157

6.9 进一步阅读 157

第7章 利用ggez创建2D桌面游戏 159

7.1 技术需求 159

7.2 项目简介 160

7.3 了解线性代数 160

7.4 实现gg_ski项目 162

7.4.1 main函数 163

7.4.2 输入处理的模式 164

7.4.3 gg_ski项目中的输入处理 166

7.4.4 quicksilver的其他差别 167

7.5 实现gg_silent_slalom项目 172

7.6 实现gg_assets_slalom项目 174

7.7 实现gg_whac项目 175

7.7.1 资源数据 177

7.7.2 应用程序和事件的通用结构 178

7.7.3 模型的其他字段 179

7.7.4 定义一个微件 180

7.8 本章小结 182

7.9 本章练习 182

7.10 进一步阅读 182

第8章 解释和编译所用的解析器组合器 183

8.1 技术需求 183

8.2 项目简介 184

8.3 包含Calc 184

8.4 理解形式语言及其解析器 187

8.4.1 正则语言 188

8.4.2 上下文无关语言 189

8.4.3 上下文相关语言 189

8.5 使用Nom构建解析器 190

8.5.1 编译器-编译器和解析器组合器 191

8.5.2 Nom库的基本知识 191

8.6 calc_parser项目 199

8.6.1 理解main.rs源文件 201

8.6.2 parser.rs源文件 202

8.7 calc_analyzer项目 209

8.7.1 检查解析后的程序的变量 209

8.7.2 main.rs文件 212

8.7.3 symbol_table.rs文件 212

8.7.4 analyzer.rs文件 213

8.8 calc_interpreter项目 218

8.8.1 main.rs文件 219

8.8.2 symbol_table.rs文件 220

8.8.3 executor.rs文件 221

8.9 calc_compiler项目 223

8.9.1 main.rs文件 224

8.9.2 compiler.rs文件 225

8.10 本章小结 227

8.11 本章练习 228

8.12 进一步阅读 228

第9章 使用Nom创建计算机模拟器 229

9.1 技术需求 229

9.2 项目简介 230

9.3 简单的机器语言 230

9.3.1 与机器语言相关的主要概念 231

9.3.2 扩展机器语言 235

9.3.3 编写简单的程序 236

9.3.4 Eratosthenes筛法 244

9.4 定义字节寻址的机器语言 246

9.5 nom_byte_machine项目 248

9.5.1 main.rs源文件 250

9.5.2 使用Nom库 252

9.5.3 emulator.rs源文件 255

9.5.4 parsing_interpreter.rs源文件 258

9.5.5 translator.rs源文件 260

9.6 nom_disassembler项目 261

9.6.1 运行项目 262

9.6.2 查看源代码 263

9.6.3 生成供调试使用的反汇编代码 264

9.6.4 生成反汇编代码以重组 266

9.7 本章小结 267

9.8 本章练习 267

第10章 创建Linux内核模块 269

10.1 技术需求 269

10.2 项目简介 270

10.3 理解内核模块 270

10.4 boilerplate模块 272

10.4.1 构建和运行内核模块 273

10.4.2 构建命令 274

10.4.3 样板模块的源代码 276

10.5 使用全局变量 278

10.6 分配内存 279

10.7 字符设备 281

10.7.1 构建字符设备 281

10.7.2 dots模块的源代码 283

10.8 本章小结 288

10.9 本章练习 289

10.10 进一步阅读 289

第11章 Rust语言的未来 291

11.1 IDE和交互式编程 291

11.2 库成熟度 292

11.3 异步编程 293

11.4 优化操作 298

11.5 常量泛型特性 299

11.6 嵌入式系统 300

11.7 本章小结 301

练习答案 303


展开全部
商品评论(0条)
暂无评论……
书友推荐
本类畅销
编辑推荐
返回顶部
中图网
在线客服