新書推薦:

《
远见:如何摆脱短期主义
》
售價:HK$
85.8

《
人生,体验而已
》
售價:HK$
64.9

《
无人公司:打造未来超级商业体
》
售價:HK$
76.8

《
精神障碍模型:一个精神病学教授的批判性反思
》
售價:HK$
107.8

《
图解大模型:生成式AI原理与实战(全彩)
》
售價:HK$
175.8

《
日耳曼尼亚:德意志的千年之旅
》
售價:HK$
184.8

《
王朔文集(王朔经典作品,共15册!全新再版!当代文坛绕不过去的存在)
》
售價:HK$
766.7

《
让DeepSeek成为你的心理咨询师
》
售價:HK$
60.5
|
編輯推薦: |
本书内容全面,从前后端到数据库再到框架编写,覆盖了全套内容,并且难度逐步递增,旨在成为初探Rust Web领域的读者的首选入门书籍。此外,书中还提供了丰富的配套资源,包括代码示例、工具安装指南等,帮助读者更好地学习和实践。
|
內容簡介: |
本书是面向Rust开发者的实战指南,旨在深入解析如何使用Rust语言构建高性能的网络服务。书中不仅介绍了基础的网络协议和Rust网络服务的简单实现,还通过Rocket框架的使用,深入探讨了如何构建高效、安全的Web应用。此外,本书还特别引入了新一代数据库SurrealDB的使用,展示了其在Rust网络服务开发中的强大功能和灵活应用。
來源:香港大書城megBookStore,http://www.megbook.com.hk 全书共11章,首先从Rust构建网络服务的基础出发,详细介绍了HTTP和TCP的实现。随后深入探讨了Rocket框架的使用,包括Rocket生命周期、请求处理、响应生成及错误处理等核心概念。在此基础上,书中引入了SurrealDB,详细说明了其安装、命令总览、与Rust结合使用等操作,让读者能够掌握使用Rust和SurrealDB构建现代Web应用的技巧并通过编写surreal_use框架对SurrealDB数据库的学习进行巩固和提升。最后,通过一个完整的日程待办系统开发实例,让读者能够综合运用书中的知识点,完成从前端到后端的全栈开发。
本书特色在于结合了最新的Rust语言特性与现代Web开发框架Rocket,以及新一代数据库SurrealDB的应用,既有深度又不失广度,非常适合有一定Rust基础的开发者深入学习。通过实际的项目案例,读者可以快速掌握Rust在网络服务开发中的应用,为高性能Web应用开发打下坚实的基础。
|
關於作者: |
盛逸飞,Slint第三方组件库SurrealismUI的作者,常活跃在GitHub社区,主攻Rust前端方向。高德地图系列文章和视频获得一致好评,总访问量超过60万人次。
|
目錄:
|
第1章Rust构建网络服务
1.1认识TCP/HTTP
1.1.1TCP
1.1.2HTTP
1.2使用Rust实现简单网络服务
1.2.1实现TCP
1.2.2实现HTTP
第2章认识Rocket
2.1Rocket框架的基本概念和特点
2.1.1Rocket简介
2.1.2Rocket的优势
2.2搭建本地Rocket文档示例
2.2.1下载源码
2.2.2运行示例程序
2.2.3错误说明
2.3QuickStart
第3章Rocket生命周期
3.1Rocket生命周期解析
3.2从请求到响应的详细流程
第4章Rocket请求
4.1Rocket常见请求方法的写法
4.2请求路径
4.2.1动态路径
4.2.2路径保护
4.2.3Rocket请求获取静态文件
4.2.4忽略路径
4.2.5路由优先级
4.3请求守卫
4.4Cookie
4.4.1隐私Cookie
4.4.2密钥
4.5HTTP内容类型
4.6请求体数据
4.6.1JSON数据
4.6.2表单数据
4.6.3文件
第5章Rocket响应
5.1Rocket
5.1.1不负责任的响应方式
5.1.2响应的标准
5.1.3Rocket快速响应
5.2Responder
5.2.1响应外壳
5.2.2自定义Responder
第6章Rocket错误处理
6.1错误处理器
6.2Rocket中的错误处理器
6.3实现错误处理器
6.3.1一个简单的默认错误处理器
6.3.2多个错误处理器的优先级匹配
6.3.3通过自定义Responder自定义错误处理器
第7章Rocket状态管理
7.1状态管理
7.2前端状态管理和后端状态管理的区别
7.3Rocket中的状态管理
第8章新一代数据库SurrealDB
8.1SurrealDB简介
8.2与其他数据库的区别
8.2.1适应未来的架构与模型
8.2.2自我优化和强大的性能
8.2.3多用户权限管理
8.3安装SurrealDB
8.4SurrealDB命令总览
8.4.1数据库启动命令
8.4.2数据库操作命令
8.4.3数据库脚本导出命令
8.4.4数据库脚本导入命令
8.4.5数据库版本信息命令
8.4.6数据库更新命令
8.4.7数据库检查连接命令
8.4.8数据库备份命令
8.4.9数据库查询文件验证命令
8.4.10数据库帮助命令
8.5SurrealDB命令基础知识说明
8.5.1SurrealDB数据存储地址
8.5.2SurrealDB严格模式
8.5.3节点代理间隔
8.5.4语句超时时间的作用
8.5.5事务超时时间的作用
8.5.6允许所有出站网络访问
第9章SurrealQL
9.1数据类型
9.2SurrealDB ID类型
9.3SurrealQL语句
9.3.1DEFINE语句
9.3.2USE语句
9.3.3INFO语句
9.3.4REMOVE语句
9.3.5CREATE语句
9.3.6INSERT语句
9.3.7SELECT语句
9.3.8UPDATE语句
9.3.9DELETE语句
9.3.10RELATE语句
9.3.11SHOW语句
9.3.12SLEEP语句
9.3.13SurrealDB中的编程式语句
9.3.14SurrealDB中的事务语句
9.3.15@变量解释
9.4通过HTTP发起交互
9.4.1使用ApiFox创建团队项目
9.4.2DIL数据库信息语言
9.4.3DML 数据库操作语言
9.4.4其他统一化请求方式
9.5Surrealist可视化工具
9.5.1创建会话并连接
9.5.2发起查询
9.5.3使用Surrealist内置控制台连接SurrealDB
9.6Rustsurrealdb库支持
9.6.1QuickStart
9.6.2完整的增、删、改、查
9.6.3Rustsurrealdb库API梳理
第10章surreal_use
10.1需求分析与设计
10.1.1发现需求
10.1.2准备工作
10.2抽离数据库配置与代码
10.2.1构想设计
10.2.2具体实现
10.2.3使用surreal_use获取配置
10.3零SurrealQL语句
10.3.1编写core模块
10.3.2扩展原始库
10.3.3编写第1个语句
10.3.4完成增、删、改、查语句
10.3.5通过语句构造器工厂统一管理
10.4补全README
10.4.1版本与许可证信息
10.4.2简介与作者信息
10.4.3描述库功能
10.4.4快速入门QuickStart
10.4.5目标
10.5发布第1个版本
10.5.1发布到GitHub上
10.5.2发布到crates.io
10.6通过GitHub Wiki编写库文档
10.7小结
第11章综合案例: 日程待办系统
11.1选择日程待办系统的原因
11.2需求分析
11.2.1关键技术概述
11.2.2需求设计
11.3项目目录构成与依赖
11.3.1前端目录构成与依赖
11.3.2后端目录构成与依赖
11.4项目前端编码实现
11.4.1核心类型及工具实现
11.4.2接口部分实现
11.4.3路由部分实现
11.4.4状态管理实现
11.4.5页面及页面样式实现
11.5项目后端编码实现
11.5.1理解后端模块关系
11.5.2用户接口实现
11.5.3待办接口实现
11.5.4团队接口实现
11.5.5跨域资源访问
11.5.6后端入口文件
11.6小结
附录A本书的环境搭建与基础工具
A.1Rust工具链的安装
A.2Git工具的安装及配置
A.2.1Git简介
A.2.2安装
A.3开发工具的安装
A.3.1JetBrains IDEA的安装
A.3.2VS Code的安装
A.4API测试工具Apifox的安装
A.4.1Apifox简介
A.4.2安装
A.5Surrealist可视化工具的安装
A.5.1Surrealist简介
A.5.2安装
A.6NVM安装Node环境
A.6.1在UNIX、macOS和 Windows WSL环境下安装NVM
A.6.2在Windows系统下安装NVM
A.6.3使用NVM下载Node.js
A.6.4切换版本
A.7安装Vite及初始化Vue项目
A.7.1Vite简介
A.7.2使用Vite初始化Vue项目
|
內容試閱:
|
在编写本书的过程中,笔者深刻地体验到了技术世界的广阔与多元。笔者的编程之路,从对Java的熟悉与依赖,到全身心投入Rust语言的怀抱,是一次既勇敢又充满期待的转变。2023年中旬,笔者开始接触Rust,被其无限的潜力与使编程人员更加“聪明”的能力所吸引。此刻,笔者不仅想要突破现状,更渴望深入探索,不愿让我的青春仅仅局限于处理单一的业务接口。
Java与Spring在Web开发领域的长久统治,虽然稳固但也许逐渐让我们忽视了追求简洁与效率的可能。在这种环境下,一个简单的项目也可能需要堆叠大量的微服务技术涵盖各种中间件,使即便是简单的CRUD操作也变得过于繁重,增加了不必要的学习成本并埋下了种种难以预料的问题。诚然,大型项目使用Java是一个优秀的选择,这是无可否认的,但中小型的项目使用Rust可以展现不一样的风景线: 一个充满活力、创新与高效的新世界。这种不断追求变革的精神,正是笔者决定深入Rust并着手编写本书的主要动力。
希望本书能为广大开发者提供一扇窗,让大家能够窥见Rust与Rocket框架组合的强大潜能,一种高性能、安全且高度可扩展的Web开发方式,同时保持代码的简洁与优雅。同时,希望能激励更多的开发者勇于走出技术的舒适区,探索新的领域。
国内外对Rust框架的学习资料确实较少,因此笔者觉得非常幸运能在Web领域贡献出自己的一份力量。本书内容全面,从前后端到数据库再到框架编写,覆盖了全套内容,并且难度逐步递增,旨在成为初探Rust Web领域的读者的首选入门书籍。此外,书中还提供了丰富的配套资源,包括代码示例、工具安装指南等,帮助读者更好地学习和实践,扫描目录上方的二维码可下载。
因此,笔者诚挚邀请广大读者与我一同踏上这场技术变革的旅程,探索更加灵活高效的开发方式。让本书成为读者在Rust Web开发道路上的第一本指南,共同见证技术世界的奇妙与无限可能。
本书入门难度中等,适合具有一定的Rust语言基础的读者阅读。如果您已经完成Rust的基础学习并希望更进一步探索Rust Web相关内容,本书会是一本不错的参考读物。
再次感谢每位读者的陪伴与支持。在Rust的世界里,让我们携手共进,不断创新。祝您的编程旅程既充满乐趣又丰富多彩。
由于时间有限,书中难免有疏漏之处,敬请读者批评指正,并在此表示我的深深感激。
盛逸飞2024年10月
|
|