Windows 生态全面开花时代,苹果的 Swift、谷歌的 Flutter 相继宣布支持 Windows 10,这无疑为锦上添花,也为开发者带来了福音!
近日,苹果 Swift 编程语言和 Google 基于 Dart 编程语言的 Flutter UI 框架已经登陆 Windows 10。
Swift 工具链支持 Windows 10
Swift 是 Apple 于 2014 年 WWDC 上发布的开源通用编程语言,对于很多用户而言,Swift 在一定程度上可视为是 iOS 开发者的专用语言,主要用来搭建基于 iOS、macOS、watchOS、tvOS、Linux 和 z / OS 平台的应用程序。
时下,值得庆贺的是,Swift 现在也支持了用户群体更为广泛的 Windows 系统。
据 Swift 团队表示,苹果公司现已发布了适用于 Windows 的可下载 Swift 工具链映像(
https://swift.org/download/),其中包含在 Windows 10 上构建和运行 Swift 代码所需的一切。简而言之,开发者现在能够直接在 Windows 10 平台上构建、运行、调试 Swift 代码。
事实上,早在今年 3 月,苹果在公布 Swift 5.3 路线图之际,就已透露,将增加对 Windows 和其他 Linux 发行版的支持。而这一功能主要由 Swift Core 团队成员、Google Brain 的软件工程师 Saleem Abdulrasool 提供。
在去年 LLVM 开发者大会上,Abdulrasool 曾详细介绍了将 Swift 引入 Windows 的诸多挑战。他指出,当时他设法通过 Linux 上的交叉编译将 Swift 引入 Windows。
当然,将 Swift 移植到 Windows 并非想象中的那么简单,首先需要确保其完整的生态在新平台上可用。基于此,苹果公司在发布的 Swift 工具链中,除了移植 Swift 编译器之外,还包括标准库和 Swift 的三个核心库,即 Foundation、libdispatch 和 XCTest。
“这些库是使开发人员能够轻松编写功能强大的应用程序的一部分,而不必担心底层系统的许多细节,” Abdulrasool 如是说。
同时,“有了这些核心库以及依靠 Swift 与 C 的灵活互操作性,就有可能在 Windows 中纯粹使用 Swift 开发应用程序,同时利用 Windows 平台上现有的库集。”
Abdulrasool 表示,Windows 的当前 Swift 是“旅程的开始”,下一步,它将很快提供 Swift Package Manager,以及仍有大量的工作要做。
目前,对于想要在 Windows 上尝试 Swift 的开发者,将需要工具链安装程序和 Visual Studio 2019 集成开发环境以及一些其他组件,例如 Windows 10 SDK、用于构建 C ++ 代码和 Windows Universal C Runtime 的工具集。
也可以通过开源的计算器应用程序案例进行学习:
https://github.com/compnerd/swift-win32/blob/ed4993f7cbb284a83ee77fcecdc2570cf24355e4/Examples/Calculator/Calculator.swift 。
Google 不甘落后
发布 Flutter Alpha 版本支持 Windows
就在 Swift 宣布支持 Windows 的次日,Google 的 Flutter 小组也发布了适用于 Windows 的 Flutter Alpha 版本。
作为跨平台框架,Flutter 最初仅支持 Android、iOS 移动端。自 2015 年发布的几年后,开放的 Flutter 先后开始进行 Web、桌面端、嵌入式系统的探索,并为 macOS、桌面 Linux 提供 Beta 支持。现在,Flutter Alpha 正式支持微软数十亿的 Windows 10 设备,将大大降低开发者的开发门槛。
对此,Flutter 团队表示,为 macOS、Linux 和现在的 Windows 提供支持,可改进开发者的工具,减少相应的开发压力,帮助更多的开发者通过单个代码库为本地或 Web 应用程序构建用户界面。
据报道,Flutter for Windows 的 Alpha 版本仅支持经典的 Win32 API,但 Google 正在尝试带来 Flutter Shell 的 UWP 版本。
最后
无论是苹果的 Swift,还是谷歌的 Flutter,自诞生之日起,就备受业界关注,如今两大工具分别从自家的主战场,相继支持 Windows,从应用角度上来看,Swift 的新征程在此起航,Flutter 也终实现了自己“一统天下”的愿景,为开发者的开发效率提升带来一定的驱动。
基于此,作为 Android 亦或是 iOS 开发者的你,期待吗?
参考:
https://www.zdnet.com/article/now-windows-10-gets-apples-swift-programming-language-and-googles-flutter/