Vapor Web 开发
开启 Vapor Web 开发之旅
今年初,因应对 Web API 的开发需求,我重新学习了下 Vapor 最新的官方文档。💡所以,我决定重新梳理学习的内容写一系列关于Vapor Web开发的文章!如果你也正考虑用 Swift 开发 Web 项目,我即将发布的文章可能对你有所启发!📚有兴趣的话就请持续关注吧!👀
595次点击4分钟阅读
介绍
作为正儿八经的开篇,有必要先介绍一下 Vapor,当然也可以直接去官网了解:
Vapor 官网
官网对 Vapor 描述的三大特性是:
- 高性能:基于 Apple 的SwiftNIO 库实现的非阻塞、事件驱动的架构;
- 高可用:使用 Swift 编程语言进行开发,集成了 Swift 语言的一切优点,强大而且容易学习;
- 高可靠:关注类型安全的面向协议设计,使用生动且安全;
使用最大的感受可能就是优雅、高效
,因为是 Swift 开发,所以最后部署的应用就是一个可执行文件,对了需要提一嘴,Vapor 支持在 macOS 和 Linux 下开发并且部署应用。
也有比较不错的生态,虽然使用的人员远不如 java、python、Go、PHP、JS、Ruby 等语言的 Web 框架的多,但是还算是比较健康的发展。
📖 生态环境
Vapor is more than just a web framework. The project includes over a hundred official and community maintained server-first Swift packages.
官方称 Vapor 不仅是 web 框架,整个项目还包含上百个官方和社区维护的服务优先的 Swift 包,按我理解就是这些包不仅能用于开发 web 应用,还能用于其他平台应用的开发。
Vapor 支持常规的数据库、消息队列、前端页面渲染引擎等中间件,生态还是不错的,整个文档浏览一遍 web 应用需要的功能都有相应比较优雅的方式实现。
学习建议
说起文档不得说起这个框架的学习:
- 了解基本的内容阅读官方文档足够,建议先浏览一遍大概知道需要用什么的时候到哪里查使用方法;
- 但这不够还是要基于实践,可以阅读kodeco(原为Raywenderlich)的 Server-Side Swift with Vapor 这本书,也可访问网友托管到 Github 上的版本lukailun/Server-Side-Swift-with-Vapor学习,这里面也有源码参考;
- 当然也可以看我整理的后面一系列的实践记录进行学习,我也是基于上面👆这本书的实践来的,不过我会整理的细致一些。
💡 注意
《Server-Side Swift with Vapor》书很久没更新了,有些异步接口的使用并不是最新版的,担心这个问题的可以直接看我整理的内容。
安装
因为这个比较简单我就不赘述了,直接按照官方文档-在 Linux 上面安装的内容安装配置即可,
💡 建议
对于阅读英文比较吃力的同学可以临时阅读官方文档有中文版本,软件开发还是建议学好英文,计算机相关的单词就这些,每次看文档就记一点,多了就都认识了。
日拱一卒,功不唐捐!
后续内容
后续内容按照书上的内容进行,总共五个大部分,每个部分会分多篇文章实践和记录,这个事儿是个长期的事儿,Take it easy!跟着我一起学习吧。
- 构建简单的 Web API
- 制作简单的前端网页应用
- 数据校验、用户验证和授权
- Vapor 的进阶使用
- 生产部署
🧲 补充
实践可能比较容易,记录和总结会花一些时间,我们一起有耐心地完成 Vapor 学习之旅!