Swift 開發(fā)團(tuán)隊(duì)表示,其即將推出的5.3 版本的目標(biāo)包括“增加對(duì) Windows 和其他 Linux 發(fā)行版的支持”。他們提到 Swift 5.3 將包括重大的質(zhì)量和性能增強(qiáng)。更重要的是,此版本還將擴(kuò)展 Swift 可用和受支持的平臺(tái)的數(shù)量,特別是增加對(duì) Windows 和其他 Linux 發(fā)行版的支持。
蘋果開源了 Swift 編程語言,但除了自家的平臺(tái),似乎沒有動(dòng)力去擴(kuò)大對(duì)其他平臺(tái)的支持,所以 Swift 跨平臺(tái)的進(jìn)展比較緩慢,目前僅支持 macOS 和 Ubuntu。
正因如此,不少社區(qū)成員十分積極將 Swift 移植到更多平臺(tái)。例如,IBM 在服務(wù)器端方面為 Swift 貢獻(xiàn)了Kitura框架,但由于令人失望的使用情況,IBM 在2019年12月放棄了對(duì)它的大部分支持。盡管如此,目前仍然有一個(gè)官方的Swift Server 工作組(SSWG),其主導(dǎo)的項(xiàng)目包括 Swift NIO(事件驅(qū)動(dòng)的網(wǎng)絡(luò)框架)。此外,還有知名的Vapor框架,這是一個(gè)可在 macOS 和 Ubuntu 上運(yùn)行的 Web 開發(fā)框架。
對(duì)于Windows平臺(tái),曾經(jīng)有過一個(gè)開源的SwiftForWindows項(xiàng)目來支持在 Windows 中提供易于使用的開發(fā)環(huán)境,不過現(xiàn)在似乎已宣告死亡。除此之外,還可以使用 Windows 的 Linux 子系統(tǒng)(WSL)運(yùn)行 Swift 編譯器,但會(huì)存在一個(gè)問題——交互式命令行 REPL(Read Eval Print Loop)在 WSL 1.0 中不起作用。所以,對(duì)于希望在 Windows 上使用 Swift 的開發(fā)者來說,在 Docker 容器中運(yùn)行 Swift 工具鏈?zhǔn)切兄行У囊粋€(gè)解決方案。
好消息是,目前針對(duì) Windows 的原生 Swift 官方路由已經(jīng)完善。該項(xiàng)目被稱為swift-build而不是 swift-windows,因?yàn)樗w了 Linux 和 Docker 以及Windows。受支持的 Windows 10 最低版本為 10.0.17763.0(2018年10月更新)。
事實(shí)上,早在1月份發(fā)布的Swift 6 發(fā)展路徑文檔中,開發(fā)團(tuán)隊(duì)就表示要擴(kuò)展可用和支持 Swift 的平臺(tái)數(shù)量?,F(xiàn)在在宣布Swift 5.3 的開發(fā)目標(biāo)公告中,特別指出了“添加對(duì) Windows 和其他 Linux 發(fā)行版的支持”。
在 Windows 和 Linux 上提供更好的Swift 支持將有助于服務(wù)器端或非可視化代碼的開發(fā),比如 Tensorflow 機(jī)器學(xué)習(xí)建模和 Vapor 等項(xiàng)目案例。
不過仍然有一個(gè)棘手的問題,那就是 GUI 應(yīng)用程序。因?yàn)?SwiftUI 與蘋果操作系統(tǒng)綁定在一起,此問題也許會(huì)有解決方案,但不幸的是,將 macOS 和/或 iOS 的 Swift 應(yīng)用程序帶到 Windows 并重新編譯它的想法無法實(shí)現(xiàn)。
-
Linux
+關(guān)注
關(guān)注
87文章
11345瀏覽量
210391 -
WINDOWS
+關(guān)注
關(guān)注
4文章
3569瀏覽量
89303
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論