面对开源,苹果不再踟蹰!
在最新的苹果开发者大会WWDC上,赢得最热烈掌声的不是新的iOS和OS X版本,也不是新的苹果音乐服务。最热烈的掌声爆发在苹果的技术总裁Craig Federighi宣布苹果将开放其下一个版本的Swift的源代码的时候。
为什么观众这么的激动?在过去15年里,开发者们越来越偏向开源的工具和平台。但是与此同时,苹果一直在推动iOS开发者采用苹果自家的技术并且远离第三方工具。例如苹果认为效率低下的Adobe的Flash。但是即使苹果目前冒险疏远依靠众多第三方APP和服务的开发者,开发人员现在也有众多的方式可以选择并以他们想要的方式来完成他们的工作。事实证明,为了让开发者留下,苹果不得不选择开源。
通过开源Swift,苹果让开发者更容易地使用Swift在除了iOS和OS X以外的平台来构建程序。
可以肯定的是,Swift已经越来越疯狂。但是,现在许多最近几年创建的其他新的编程语言也都在疯狂地争夺开发者的注意力。Facebook正在实验Hack和D语言,Google开源了他的Go语言,Mozilla刚刚开放了Rust语言的第一个完整版本。这些语言都有其长处和弱点,他们中的一个或者多个都有可能成为下一个软件开发的标准。并且这些语言都是开源的!。
最值得注意的是微软在去年做出了开源.NET framework的决定。在此过程中,微软给予了所有开发者正式许可,开发者现在可以在包括iOS和OS X等的非windows环境使用.NET framework。并且微软提供了代码,这让开发者们修改和扩展.NET平台更加的容易。面临着使用微软的公开来开发苹果应用程序产品的挑战,苹果真的没有其他选择,只能让Swift同样的对开发者友好----开源。
Apple的Objective
苹果第一次宣布Swift是在一年前的WWDC上,当时Swift是以Objective-C的继任者的身份出现。Objective-C的历史可以追溯到1983年,直到Swift的发布,Objective-C一直是开发iOS应用的主要编程语言。Swift是一个更加现代的语言,它增加了许多野心勃勃的功能,旨在帮助新程序员学习如何编写代码,并且帮助经验丰富的程序员避免出现严重的编程错误。
虽然苹果对开源并不陌生,它曾先后开源了Darwin和webkit。前者是OS X操作系统的基础,后者是Safari浏览器的基础代码。但是苹果从未开源Objective-C,尽管从技术上来说,可以使Objective-C在其他操作系统上运行。但是缺少来自苹果的支持使得跨平台的编码变得十分困难。这也是Microsoft和它的.NET开发平台的机会。
一家名为Xamarin公司长期提供开发工具,这个工具使得开发人员能够使用微软的语言来构建软件,可以运行在Windows,Linux,iOS上,Android和更多。这意味着开发者可以不必同时用Java来支持Android,用Objective-C来支持iOS。他们甚至可以使用相同的代码为基础,台式机和服务器端应用程序。
虽然大部分的iOS和OS X开发人员仍然使用Objective-C或Swift,苹果能够通过让Swift在各种操作平台上可用来与Microsoft竞争。然而其结果可能在某种程度上意味着苹果公司自己的编程语言,最终可能被用来制造用于应用程序的Android竞争对手。但苹果认为这种风险没有确保开发者的衷心和支持重要。
How Open Is Open?
在博客中,苹果写道,它的开源版本将包括在标准协议下的Swift生态系统的核心部件--包括编译器和标准库,但细节仍然稀疏,没有人知道具体会开放到什么程度。
苹果将保留关键权限,这是完全可能的。就像最初创建的Java的公司一样。苹果甚至可能最终打了退堂鼓使得Swift并不开放,就像FaceTime,它曾经承诺将是一个开放的视频通信标准。无论如何,这对Swift来说是一个很大变化,这是曾经仅可用于苹果自己的平台的编程语言。
苹果本身也将有助于将Swift应用于Linux操作系统,并具有直接访问苹果公司使用的实际运行用Swift构建的软件的代码,其他的公司也将更加容易地支持Swift。目前还没有提及,但是,开源它的Cocoa interface,这是另一块iOS和OS X的应用程序的核心!
尽管如此,在任何条件下,苹果开源Swift也应该给开发商一些保证,使得开发者不会出现在像在搜索巨头Google使用甲骨文的Java编程语言而进行的斗争所面临的法律困境。甲骨文称,谷歌通过创建自己的类似Java的编程平台为Android侵犯了其知识产权。现在很难说,这种影响大多数开发者的情况将会怎样收场。但是,像苹果公司可以提供一些保证,开发人员将能够以自己的需要修改或者改进这些工具,通过编程语言和其他核心开发技术融入到开源领域,而不必面临法律困境。毕竟,应用的开发足够困难即使你的邮件没有收到诉讼。
原文链接 :http://www.wired.com/2015/06/open-sourcing-no-longer-optional-not-even-apple/