來源:量子位
最近,Swift 發行了 5.3 版本,這意味著它可以直接在 Windows 10 上使用了。
由于 Swift 是蘋果開發的一門編程語言,能在 Ubuntu、Linux 和蘋果系統上使用,但在 5.3 版本前,Windows 并不直接支持。
雖然,官方在之前出過一版 Windows 安裝 Swift 的教程,但許多用戶發現,在 Windows 上沒有合適的 IDE 寫代碼(例如 VScode 對 Swift 的支持就不太好),導致體驗效果很差。
不過,這些糟糕的體驗將成為過去式。
來自谷歌大腦(Google Brain)的工程師 Saleem Abdulrasool 直接打包好了 Swift Windows 的 SDK,下載完后就能直接使用。
全 Swift 編寫,Windows 上運行
在 Windows 上,使用 Swift 做的計算器,效果是這樣的:
雖然界面由 CMake 構建,然而程序卻是完完全全用 Swift 編寫,應用程序代碼和 Swift 系統庫之間可以無縫切換。
至于調試器 lldb,也能很好地實現:
事實上,將 Swift 移植到 Windows,不僅需要移植編譯器,還要確保完整的生態系統能在平臺上使用。
這其中,還包括編譯器,標準庫和核心庫(調度程序,基礎,XCTest)。
由于 Swift 之前并未在 Windows 上編譯過,作者 Saleem Abdulrasool 形容這種移植就像是 " 來到了一個全然陌生的外星球 "。
如下圖,Swift 移植到 Windows 上,需要面臨許多問題,包括 Windows 的 VFS 會比 Linux 更慢,bash 轉變成 cmd 等等。
然而,Saleem Abdulrasool 表示,這必須要做,因為 C++ 可能出現的問題實在太多了:
不過,他們還是實現了這一過程,只需要導入 SwiftWin32,在 Windows 系統中編寫 Swift 代碼將完全不是問題。
那么,這樣的代碼,實用性和穩定性如何呢?
跨平臺應用:值得入手
事實上,目前已經有許多跨平臺應用采用了植入 Windows 的 Swift 編寫程序,包括應用軟件公司 Readdle。
這個公司于 2019 年開始試用在 Windows 上編寫 Swift,并很好地與安卓版的程序 Spark 結合,將這個程序擴展到了 iOS 和 macOS 平臺。
Readdle 的主管 Alexander 認為,目前 Swift 在 Windows 上編寫的軟件完全可以滿足編寫基本應用程序的需求,相比之下,C 和 C++ 編寫的應用程序可能因為依賴性而給程序帶來更多麻煩。
也就是說,Windows 平臺上的 Swift 到目前為止,都非常穩定。
如果程序員想將現有的應用程序擴展到 macOS、iOS 以外的平臺,那么采用 Swift 絕對能快速達成這一目標,植入 Windows 平臺的 Swift 則使得這個行為變得更方便。
網友:在 Windows 上植入 Swift 是神作
在 Saleem Abdulrasool 的一次演講中,他提到了 Swift 和 Windows 各自的優點。
Swift:安全、靈活、多范式、編譯語言、從遺留代碼中跳脫出來、發展性好
Windows:開發者和用戶都可用、應用級代碼、輕量級系統、有趣的挑戰等
目前來說,的確還有許多需要完善的地方,但 Saleem Abdulrasool 表示,他們會繼續努力改進代碼,也歡迎更多的人加入這個項目中。
對于這件事,有網友評論,將 Swift 帶給 Windows,就像是給了地獄里面的人一杯水一樣,簡直就是神作。
此外,也有網友表示,鑒于 Swift 是他用過最好的語言,現在幾乎是急不可耐地想要在 Windows 上編碼 Swift 了。
那么,你會嘗試在 Windows 中使用植入的 Swift 編寫程序嗎?