Swift 将增加对 Windows 和其他 Linux 发行版的支持

来源: OSCHINA
编辑: 局长
2020-04-01

Swift 开发团队表示,其即将推出的 5.3 版本的目标包括“增加对 Windows 和其他 Linux 发行版的支持”。

他们提到 Swift 5.3 将包括重大的质量和性能增强。更重要的是,此版本还将扩展 Swift 可用和受支持的平台的数量,特别是增加对 Windows 和其他 Linux 发行版的支持。

苹果开源了 Swift 编程语言,但除了自家的平台,似乎没有动力去扩大对其他平台的支持,所以 Swift 跨平台的进展比较缓慢,目前仅支持 macOS 和 Ubuntu。

正因如此,不少社区成员十分积极将 Swift 移植到更多平台。例如,IBM 在服务器端方面为 Swift 贡献了 Kitura 框架,但由于令人失望的使用情况,IBM 在2019年12月放弃了对它的大部分支持。尽管如此,目前仍然有一个官方的 Swift Server 工作组(SSWG),其主导的项目包括 Swift NIO(事件驱动的网络框架)。此外,还有知名的 Vapor 框架,这是一个可在 macOS 和 Ubuntu 上运行的 Web 开发框架。

对于 Windows 平台,曾经有过一个开源的 SwiftForWindows 项目来支持在 Windows 中提供易于使用的开发环境,不过现在似乎已宣告死亡。除此之外,还可以使用 Windows 的 Linux 子系统(WSL)运行 Swift 编译器,但会存在一个问题——交互式命令行 REPL(Read Eval Print Loop)在 WSL 1.0 中不起作用。所以,对于希望在 Windows 上使用 Swift 的开发者来说,在 Docker 容器中运行 Swift 工具链是行之有效的一个解决方案。

好消息是,目前针对 Windows 的原生 Swift 官方路由已经完善。该项目被称为 swift-build 而不是 swift-windows,因为它涵盖了 Linux 和 Docker 以及 Windows。受支持的 Windows 10 最低版本为 10.0.17763.0(2018年10月更新)。

事实上,早在1月份发布的 Swift 6 发展路径文档中,开发团队就表示要扩展可用和支持 Swift 的平台数量。现在在宣布 Swift 5.3 的开发目标公告中,特别指出了“添加对 Windows 和其他 Linux 发行版的支持”。

在 Windows 和 Linux 上提供更好的 Swift 支持将有助于服务器端或非可视化代码的开发,比如 Tensorflow 机器学习建模和 Vapor 等项目案例。

不过仍然有一个棘手的问题,那就是 GUI 应用程序。因为 SwiftUI 与苹果操作系统绑定在一起,此问题也许会有解决方案,但不幸的是,将 macOS 和/或 iOS 的 Swift 应用程序带到 Windows 并重新编译它的想法无法实现。

展开阅读全文
2 收藏
分享
加载中
精彩评论
除了这个,还有随着使用者的体量不同,层次不同。
比如,你在别的平台没有更好的开发工具的话,很难扎下来。
2020-04-02 09:48
1
举报
期待华为有好的编程语言提出。
2020-04-01 14:27
1
举报
最新评论 (10)
说实话swift被搞死多半都是因为每个版本的语法都在变化。每次更新,之前的代码 都会出错,要调整。
2020-04-01 14:49
0
回复
举报
没有被大规模采用前进行大改是好事,当年急着推出是因为 objc 的问题实在太多了。
2020-04-01 16:49
0
回复
举报
除了这个,还有随着使用者的体量不同,层次不同。
比如,你在别的平台没有更好的开发工具的话,很难扎下来。
2020-04-02 09:48
1
回复
举报
期待华为有好的编程语言提出。
2020-04-01 14:27
1
回复
举报
Android也是Linux发行版之一
2020-04-01 13:51
0
回复
举报
Android不能算是Linux发行版,内核代码都改动了好多,早就不一样了。
android将linux内核拿过来之后去掉了不少功能,然后通过一些手段绕开了GPL授权.它的linux内核已经和GNU Linux相差的太大了
有几个GNU/Linux的程序能直接在Android上运行的?
2020-04-02 18:35
0
回复
举报
原来如此,受教!
2020-04-03 09:10
0
回复
举报
先把协程 async await 支持了再说吧,目前 Swift 复杂嵌套异步调用 还是很麻烦
2020-04-01 13:33
0
回复
举报
年年换新~
2020-04-01 09:40
0
回复
举报
gui都喜欢绑定
2020-04-01 08:25
0
回复
举报
更多评论
10 评论
2 收藏
分享
返回顶部
顶部