《Server-Side Swift with Vapor》是一本由 Tim Condon、Tanner Nelson、Logan Wright 与 Jonas Schwartz 联合撰写的专注于服务器端 Swift 开发的实用指南。本书以 Swift 5.2 和 Vapor 4 为基础,全面覆盖了从基础到高级的服务器端 Swift 开发知识。适合对 Swift 有一定了解的开发者,尤其是那些想在服务器端应用 Swift 语言的强大功能的读者。
内容结构
本书内容分为五个主要部分,涵盖从基础到高级的服务器端 Swift 开发知识,包括 API 开发、客户端交互、数据处理、性能优化和部署等。
第一部分:创建简单 Web API
- 第 1 章:介绍 Vapor 项目的背景和书籍结构。
- 第 2 章:通过安装 Vapor Toolbox,创建并运行第一个 Vapor 项目,学习路由的基本操作。
- 第 3 章:回顾 HTTP 基础知识,包括方法、响应码等,并介绍 Vapor 的工作原理。
- 第 4 章:讲解异步和非阻塞架构,介绍 SwiftNIO 的核心概念。
- 第 5 章:介绍 Fluent ORM,学习如何在 Vapor 应用中保存数据。
- 第 6 章:配置数据库,学习如何使用不同类型的数据库。
- 第 7 章:深入 CRUD 操作,讲解 REST API 的设计和实现。
- 第 8 章:介绍控制器的概念,学习如何组织代码和管理路由。
- 第 9 章:学习父级-子级关系,掌握模型间关系的建模和使用。
- 第 10 章:学习兄弟关系,进一步掌握模型间关系。
- 第 11 章:编写测试,学习测试框架的使用,包括在 Linux 上的测试。
- 第 12-13 章:创建简单的 iPhone 应用,学习如何与 API 交互。
第二部分:构建简单网站
- 第 14 章:使用 Leaf 模板引擎,学习动态网页的创建。
- 第 15 章:使用 Bootstrap 美化页面,学习嵌套模板和文件服务。
- 第 16-17 章:创建简单 Web 应用,包括模型操作和数据交互。
第三部分:验证、用户和认证
- 第 18 章:API 认证,学习 HTTP 基本认证和令牌认证。
- 第 19 章:更新测试和 iOS 应用以适配认证。
- 第 20 章:Web 认证,学习使用 cookies 和 sessions。
- 第 21 章:数据验证,使用 Vapor 的验证库确保数据正确性。
- 第 22-24 章:集成 Google、GitHub 和 Apple 的 OAuth 认证。
第四部分:高级服务器端 Swift
- 第 25 章:密码重置和邮件发送,学习如何发送邮件和实现密码重置流程。
- 第 26 章:添加头像,学习处理文件上传和存储。
- 第 27 章:数据库/API 版本控制和迁移,学习如何安全地修改数据库。
- 第 28 章:缓存,学习如何使用缓存优化应用性能。
- 第 29 章:中间件,学习如何在请求处理中加入自定义逻辑。
- 第 30 章:WebSocket,学习实时通信的基本实现。
- 第 31 章:Fluent 高级特性,深入学习 Fluent 的复杂用法。
第五部分:生产与外部部署
- 第 32 章:部署到 Heroku,学习如何在 Heroku 上部署 Vapor 应用。
- 第 33 章:使用 Docker 部署,学习如何在 Docker 环境中运行和部署应用。
- 第 34 章:部署到 AWS,学习在 AWS 上部署和管理 Vapor 应用。
- 第 35 章:生产环境注意事项,探讨部署方法和优化策略。
- 第 36-37 章:微服务架构,学习如何使用微服务优化应用结构。
适用对象
本书适合那些对 Swift 有一定了解,希望在服务器端开发中利用 Swift 的优势,或者想要深入了解服务器端 Swift 开发的开发者。书中提供了从基础到高级的全面内容,能够满足不同层次读者的需求。
总结
《Server-Side Swift with Vapor》是一本全面深入的服务器端 Swift 开发指南。它不仅涵盖了基础理论和实践操作,还提供了丰富的实战案例和高级特性讲解。通过阅读本书,读者可以系统地学习和掌握服务器端 Swift 开发的各个方面,从而在实际项目中高效地运用这些知识和技能。