尽管距离我们第一次了解到 Fuchsia 这个操作系统的存在已经过去了一年,但谷歌仍对开发这个操作系统的意图保持沉默。Fuchsia 是谷歌旗下没啥存在感但又有些神秘的一款操作系统,目前处于开放式开发的状态,但官方一直没啥表态,比如它到底是用来干啥的,又或者是用来取代什么的。
近日有新闻消息显示,谷歌的 GitHub 存储库进行了一项奇怪的更新,该更新显示谷歌公司使用了 Swift 语言,该公司正致力于在自己的 Fuchsia OS 操作系统中为 Swift 这种编程语言提供支持。
Swift 是一种由苹果公司开发的编程语言,用于构建 iOS、macOS、tvOS 以及 watchOS 应用程序。WWDC 2014,苹果宣布所有的 iOS 设备都将开始使用一个新的编程语言叫做 Swift。Swift 被称作“快速、现代、安全、可交互的”编程语言,这门语言具有更容易学,编程更有成效的特性。
在 Swift 之前,iOS 程序基本上是用 Objective-C(OC)写的,这门语言(OC)已经使用了超过 20 年,并且也是 Mac 和 iOS 设备最基本的编程语言。大多数人觉得 OC 太难学了,语法看起来也很怪异,以至于这门代码吓跑了不少刚开始学习 iOS 编程的人。
相比之下,Swift 是一款易学易用的编程语言,而且它还是第一套具有与脚本语言同样的表现力和趣味性的系统编程语言。Swift 的设计以安全为出发点,语法和标准库也非常简洁,让编程的流程大大缩短、简化,以避免各种常见的编程错误类别。苹果的想法是用 Swift 诱惑更多的 web 开发者来开发移动软件,实际上如你所见,不断增长的开发者大军证明了 Swift 编程语言的成功。2015 年 12 月 4 日,苹果公司宣布 Swift 编程语言开放源代码。
Swift 本身作为苹果自己的开发语言已经拥有强大的功能和可能性,关键是谷歌选择 Swift 又是为了什么呢?这要从 Fuchsia OS 慢慢说起。
Fuchsia 是由谷歌开发的继 Android 和 Chrome OS 之后的第三个系统,已在 Github 公开的部分源码可以得知。谷歌对于 Fuchsia 的说明是“Pink(粉红)+Purple(紫色)=Fuchsia(灯笼海棠,一个新的操作系统)”。
Fuchsia 是个非常有意思的东西,因为它是一个与之前的例如 Android、Chrome OS、OSX、Windows 10 等不同的一个操作系统。谷歌可能希望这个新系统能够带来统一的新界面,从物联网设备,到智能手机,到笔记本电脑。
想要达到这种效果,就要以各个平台的应用开发和应用设计都能够互通互联为目的。根据现有的资料,Fuchsia 系统相关项目利用谷歌 Flutter SDK 编写而成,而 Flutter SDK 可兼容 Android 和 iOS 的跨平台代码,这一点汤 Fuchsia OS 操作系统呈现出开放的这次状态,有不少人此前推测,Fuchsia OS 不仅支持安卓和 Chrome OS,还因为其支持 Objective-C 的可能性,所以跨 iOS 也是没问题的。而前些天的消息正好印证了这一猜测。
Fuchsia OS 目前已经支持使用 Dart、C++ 和 Go 编写的软件,在这个名单上添加 Swift 意味着即使需要重新设计或者需要单独的界面,开发者也更容易将苹果平台上的应用移植到 Fuchsia OS 操作系统上。
实际上,谷歌觊觎 Swift 已经不是一天两天了,外媒 Android Police 的报道称,几年前,谷歌开发人员 Zac Bowling 帮助将 Objective-C 移植到了 Android 。Zac Bowling 还说到:“我们团队也正在为 Swift 添加对 Fuchsia 的支持”。
他们在 8 月份的时候就招揽来了 Swift 创始人 Chris Lattner,Chris Lattner 现已在谷歌工作曾在 Twitter 上发帖声称:“出于集结整合的目的,谷歌正进行着许多 folk 相关的工作,我们觉得它应该是公开的”。这句话的大意是:谷歌想要为“上游”的 Swift 官方资源库做点贡献,大家不要紧张。
Fuchsia 本身可以在 Mobile & PC 上跑,这是一个巨大的卖点,再加上可以解决 Android 和 iOS 跨平台障碍,如果谷歌可以说服开发商在Flutter中编写应用软件,它就可以打造一个能在 iOS、Android 以及最终在 Fuchsia 上运行的应用生态系统。
还有一点关键是,它还有一个基于 Vulkan 的图形渲染器“Escher”,专注于高性能、120fps 的应用程序,部分开发者认为这可能是为了以后 AR、VR 和 MR 的普及而准备的。
看起来这真的像一个面向未来的系统。鉴于目前安卓系统自身还存在许多问题(谷歌自己也承认这一点),并不是一个长久发展的操作系统,与此同时,谷歌也一直希望研发一款新系统来弥补安卓系统的缺憾,所以 Fuchsia 说不定就是接替者。
当然,在历史的长流中,也出现过很多昙花一现的新系统,对于谷歌的新项目,我们无法猜测其未来会发展到什么地步。开发员特拉维斯-盖斯布里奇特(Travis Geiselbrecht)在 Fuchsia IRC 公开论坛上表示:“这款操作系统并不是试验品,也不会是20%项目,它不是用来埋葬我们不再关注的过时产品的垃圾堆。”
因此我们姑且把它看成谷歌会致力去实现并推广的新平台,大部分来自程序员和用户的声音,还是期望它能够成功。开发一个新系统不是一件容易的事,Android 系统在正式发布之前,谷歌进行了 5 年多的研究,如果进展顺利的话 Fuchsia 最早也要等到 2020 年左右才能露出“真容”,但这款新系统与发展了十年之久的 Android 和 iOS 相比,还有很长的路要走。