Swift服务器端:简介

作为有抱负的iOS开发人员,服务器端编程并不是我要深入研究的主题之首。 但是,研究母语的多功能性和潜力激发了我的灵感,激发了我的创造力。

为什么iOS开发人员会考虑在服务器端进行编程?

  • 为您的iOS应用创建自己的后端,而不是使用第三方
  • 在您的网站上展示完整的应用程序,作为您产品组合的一部分
  • 轻松管理您的内存占用量
  • 使用客户端和服务器组件丰富您的项目

主要玩家

这里有三种出色的服务器端Swift服务:Perfect,Kitura和Vapor。 对于本教程,在创作者Tanner Nelson在Meetup上介绍了框架之后,我决定使用Vapor。

“ Vapor是用于开发基于云的应用程序的模块化服务器端框架,它利用Swift中的类型安全性,并提供模式匹配以简化路由。 该框架的共同开发者Logan Wright看到了Swift在服务器上的潜力,因为它已经可以容纳iOS开发人员,并且可以在不同平台之间实现代码共享。”

-http://www.infoworld.com/article/3088305/application-development/server-side-developers-take-a-shine-to-swift.html

我该如何开始?

首先,请确保已安装Xcode 8,因为Vapor需要Swift 3。

由于Vapor使用命令行,因此请在Xcode中选择当前命令行工具。 导航到Xcode->“偏好设置”菜单中的“位置”。 这样我们就可以使用终端来构建和运行我们的代码。

在“命令行工具”下拉菜单中选择最新版本。

Vapor提供了一个命令行工具集。 首先运行以下命令,以确保您具有正确版本的Xcode和Swift:

curl -sL check.vapor.sh | 重击

如果是这样,您应该获得一个绿色的复选标记。 如果没有,您将需要更新。

Swiftenv是一个很好的版本管理器。

一旦拥有正确的版本并且兼容性检查返回true,就可以安全地安装Vapor Toolset:

curl -sL工具箱.vapor.sh | 重击

对我来说,安装非常快。 安装完成后,我通过在终端中键入“ vapor”来检查一切是否正常。 由于未执行命令,因此收到命令列表和错误。

现在剩下的就是创建一个项目和代码。

要创建一个新项目,只需导航到您要存储该项目的目录并运行以下命令(“ HelloWorld”是我的项目的名称。您可以在其中使用任何内容):

$蒸气新的HelloWorld

Vapor在当前目录中创建一个项目,并使用Swift Package Manager下载并安装所有必要的依赖项。

导航到您的项目目录。 Vapor安装的文件遵循“模型”,“视图”,“控制器”模式,每个都有一个文件夹。

对于此项目,我们将需要导航到并打开将首先运行Vapor的“ main.swift”文件。

导入Vapor之后,我们需要创建的第一个对象是Droplet,它是服务器的主干。

“ Droplet是一个服务容器,可让您访问Vapor的许多设施。 它负责注册路由,启动服务器,附加中间件等等。”

-https://vapor.github.io/documentation/

Droplet确实是功能的中坚力量,提供了很多选择。 对我们来说幸运的是,文档也非常清晰。

现在,我们需要使用Droplet处理对网页的主索引请求,创建一条新路由,该路由将匹配所有GET请求到本地主机的请求。 此路由关闭传递给包含所有路由信息的请求实例。 在此示例中,我们返回一个String,但是您可以返回任何ResponseRepresentable,例如JSON。

此时,我们的main.swift文件应如下所示:

最后,通过在main.swift文件底部添加以下行来“服务您的Droplet”。 此命令引导服务器:

现在,保存文件,打开终端并导航到项目的根目录。 运行以下两个命令:

“ build”命令仅进行快速构建并填充.build / debug /目录,而“ run”命令在该目录中运行构建

超级壮观的服务器端Swift!
现在,Swift是开源和跨平台的,几个团队正在争相使Swift成为可行的Web语言…… realm.io

https://vapor.github.io/documentation/

坦纳·尼尔森(@ tanner0101)| 推特
Tanner Nelson(@ tanner0101)的最新推文。 软件工程师和蒸气网络框架的创建者。 nyc twitter.com