-
>
决战行测5000题(言语理解与表达)
-
>
软件性能测试.分析与调优实践之路
-
>
第一行代码Android
-
>
深度学习
-
>
Unreal Engine 4蓝图完全学习教程
-
>
深入理解计算机系统-原书第3版
-
>
Word/Excel PPT 2013办公应用从入门到精通-(附赠1DVD.含语音视频教学+办公模板+PDF电子书)
Rust项目开发实战 版权信息
- ISBN:9787302610267
- 条形码:9787302610267 ; 978-7-302-61026-7
- 装帧:一般胶版纸
- 册数:暂无
- 重量:暂无
- 所属分类:>
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
- >
上帝之肋:男人的真实旅程
上帝之肋:男人的真实旅程
¥30.5¥35.0 - >
罗庸西南联大授课录
罗庸西南联大授课录
¥13.8¥32.0 - >
唐代进士录
唐代进士录
¥15.1¥39.8 - >
我从未如此眷恋人间
我从未如此眷恋人间
¥15.9¥49.8 - >
新文学天穹两巨星--鲁迅与胡适/红烛学术丛书(红烛学术丛书)
新文学天穹两巨星--鲁迅与胡适/红烛学术丛书(红烛学术丛书)
¥9.9¥23.0 - >
推拿
推拿
¥12.2¥32.0 - >
二体千字文
二体千字文
¥21.6¥40.0 - >
诗经-先民的歌唱
诗经-先民的歌唱
¥18.7¥39.8
-
详解Spring Boot(从入门到企业级开发实战)/孙鑫精品图书系列
¥64.2¥129 -
PYTHON应用与实战
¥52.9¥79.8 -
Python编程与数值方法
¥79.6¥109 -
Go语言从入门到项目实战(视频版)
¥60.4¥108 -
软件设计师
¥14.2¥38 -
GO语言编程从入门到实践
¥75.6¥108