专栏名称: 前端早读课
我们关注前端,产品体验设计,更关注前端同行的成长。 每天清晨五点早读,四万+同行相伴成长。
目录
相关文章推荐
前端之巅  ·  React服务器组件会毁了React吗? ·  2 天前  
前端早读课  ·  【第3384期】Chrome 126 ... ·  昨天  
前端大全  ·  如何检查前端项目和 node ... ·  2 天前  
前端早读课  ·  【校招】字节跳动Parallel前端团队招人啦~ ·  2 天前  
前端大全  ·  深入了解Vite:依赖预构建原理 ·  4 天前  
51好读  ›  专栏  ›  前端早读课

【图书】Rust后端开发秘籍:我的Rust探索之旅

前端早读课  · 公众号  · 前端  · 2024-09-27 08:00

正文

我的 Rust 语言之旅始于一个偶然的机会。

和大多数学习计算机的同学一样,我是从 C++ 和 Python 开始我的编程之旅的。

在一次偶然的机会接触了 Rust 语言之后,我被其设计理念和相关的设计深深地打动了。

当时国内的相关书籍还很匮乏,只有张汉东老师的《Rust 编程之道》较为成熟,于是我先是通过学习书籍和标准库文档入手,逐渐加深对于 Rust 的理解。

当时这门语言被誉为系统编程的未来之星。

但那时,我对 Rust 的了解还仅限于表面。直到我决定深入学习,并将其应用于实际项目和工作中,我才真正体会到了这门语言的魅力。

在对 Rust 了解一些之后,我热衷于参加各种各样 Rust 相关的讲座和活动,我看到了一门新兴的编程语言发展的样子,当时 Rust 并没有什么特别知名的产品,但是近些年,Rust 已经在前端 / 系统编程领域大放异彩。在提供了良好的互操作性的同时,还有着极高的性能。

当时加入了 Rust 中文社区,这是中国最大的 Rust 开发者社区,也是世界第三大 Rust 社区。

社区中会讨论很多新项目和新技术,也就是从那时,我了解到了 Tokio、Actix、Axum 等 Rust 框架,也学习了 Zero To Production In Rust 这本书。

在之后某一天,我收到了来自社区张汉东老师的招募通知,我仔细一看,发现竟然是 Zero To Production In Rust 的译者招募,我觉得这对一个学习过这本书的人来说实在是太有意义了。于是我就和几位志同道合的小伙伴一起通过社区的审核,正式开始了翻译之旅。

【第3122期】Rust 在前端:构建高性能前端打包工具

如今,这本书的中文版终于和大家见面了,就是这本《从零构建 Rust 生产级服务》!

《从零构建 Rust 生产级服务》并不是一本多深奥的书,相反,它的目标就是将问题讲清楚。

在后端开发中,我们会遇到代码和代码之外各种各样的问题,例如 CI/CD 的配置、测试的编写、安全性的检查,这些都是我们经常会忽略,但是做好之后能大大提升效率,保证后续维护工作的高效进行。

【第3157期】解锁前端新潜能:如何使用 Rust 锈化前端工具链

本书的优秀之处就在于,它将一个非常简单的问题分解得很复杂,但是又将这些复杂的问题讲的很简单。

正是对这些细节的不懈探究和深入挖掘,《从零构建 Rust 生产级服务》变成了一本面向全工作流的书,只需学习一遍,就可以掌握绝大部分后端开发中常见的流程和解决方案,能够让你快速上手各种类型的开发挑战:

1.5 节内容预览,多项细节注释清晰明了,还原作者开发的心路历程

  • 第 1 章 准备工作:介绍了如何安装 Rust 工具链,初始化项目,选择 IDE,并设置内部开发循环和持续集成流程,为构建生产级服务打下基础。

  • 第 2 章 构建邮件简报:通过用户故事捕捉需求,采用基于问题的学习方式,引导读者逐步构建邮件简报服务,强调迭代开发的重要性。

2.3 节内容预览,以故事作为导向,引导读者深入 Rust 开发之旅

  • 第 3 章 注册新的订阅者:详细阐述了如何使用 Web 框架创建端点,进行集成测试,处理 HTML 表单,选择和初始化数据库,以及持久化订阅者数据。

  • 第 4 章 遥测:讨论了遥测的重要性,包括日志记录、可观测性,以及如何使用结构化日志和 tracing 生态系统来提高服务的可追踪性和可维护性。

  • 第 5 章 上线:介绍了部署服务的过程,包括使用 Docker 容器化应用程序,以及如何将应用部署到 DigitalOcean 平台,涉及 Dockerfile 的编写和部署策略。

  • 第 6 章 拒绝无效的订阅者(第一部分):探讨了如何通过类型驱动开发和精确的错误处理来验证订阅者信息,确保数据的有效性和安全性。

  • 第 7 章 拒绝无效的订阅者(第二部分):继续深入探讨验证机制,包括实现确认邮件发送和处理电子邮件相关的组件,以及如何构建可维护的测试套件。

  • 第 8 章 错误处理:详细讨论了错误处理的目的和策略,如何为操作人员提供有用的错误报告,以及如何通过控制流和枚举来建模和处理错误。

  • 第 9 章 投递邮件简报:描述了如何根据用户故事的变化调整服务,确保只向已确认的订阅者发送邮件,以及如何实现和测试邮件发送功能。

  • 第 10 章 API 的安全性:深入探讨了 API 安全性,包括认证、基于密码的身份验证、会话管理和种子用户的处理,以及如何确保 API 的安全性。

  • 第 11 章 容错的工作流:最后,讨论了构建容错工作流的重要性,包括处理失败模式、实现幂等性、处理并发请求和错误,以及如何设计健壮的系统。

在翻译《从零构建 Rust 生产级服务》这本书的过程中,我仿佛与作者一同经历了从零开始构建一个 Rust 项目的全过程。

从基础语法到高级特性,从理论到实践,每一步都充满了挑战。

在翻译时才发现,作者对于细节的把控超乎我们的想象。

一些我们认为很简单、很基础,但掌握得并不扎实的事情,作者将其写得非常细致入微,注释中囊括了各种参考文献和文档。

这不仅对初学者来说无比友好,对有经验的开发人员也是一个非常值得深入学习的参考。

我们不仅要理解作者的思想,还要将其准确地转化为中文(甚至包括一些俚语),这对我的技术能力和语言能力都是一次极大的考验。

希望大家能在学习《从零构建 Rust 生产级服务》的过程中有所收获,也希望大家在使用 Rust 的过程中多多领略其语言的设计之美!

内容简介

本书是一本面向 Rust 后端开发人员的入门参考书,通过实际项目引导读者从 0 到 1 构建一个功能齐全的电子邮件通信 API。本书涵盖了广泛的主题,包括 Rust 生态系统的利用、应用结构的设计、测试的编写、用户认证和授权、错误处理策略的实施、应用状态的观察,以及持续集成和部署管道的建立等。本书不仅介绍了具体的工具和库,还深入探讨了系统设计、可观测性和易操作性等重要概念,能够帮助读者掌握专业的开发方法。本书适合初学者,是开启 Rust 开发之旅的理想起点,即使没有 Rust 或后端开发经验,相信你也能够轻松跟上、快速入门。

适读人群 :Rust 开发工程师,具有一定基础的进阶开发者,后端开发工程师