开源思考

面对开源,苹果不再踟蹰!

在最新的苹果开发者大会WWDC上,赢得最热烈掌声的不是新的iOSOS X版本,也不是新的苹果音乐服务。最热烈的掌声爆发在苹果的技术总裁Craig Federighi宣布苹果将开放其下一个版本的Swift的源代码的时候。

 为什么观众这么的激动?在过去15年里,开发者们越来越偏向开源的工具和平台。但是与此同时,苹果一直在推动iOS开发者采用苹果自家的技术并且远离第三方工具。例如苹果认为效率低下的AdobeFlash。但是即使苹果目前冒险疏远依靠众多第三方APP和服务的开发者,开发人员现在也有众多的方式可以选择并以他们想要的方式来完成他们的工作。事实证明,为了让开发者留下,苹果不得不选择开源。apple-wwdc-15-0293-1280x578

 通过开源Swift,苹果让开发者更容易地使用Swift在除了iOS和OS X以外的平台来构建程序。

 可以肯定的是,Swift已经越来越疯狂。但是,现在许多最近几年创建的其他新的编程语言也都在疯狂地争夺开发者的注意力。Facebook正在实验HackD语言,Google开源了他的Go语言,Mozilla刚刚开放了Rust语言的第一个完整版本。这些语言都有其长处和弱点,他们中的一个或者多个都有可能成为下一个软件开发的标准。并且这些语言都是开源的!。

 最值得注意的是微软在去年做出了开源.NET framework的决定。在此过程中,微软给予了所有开发者正式许可,开发者现在可以在包括iOSOS X等的非windows环境使用.NET framework。并且微软提供了代码,这让开发者们修改和扩展.NET平台更加的容易。面临着使用微软的公开来开发苹果应用程序产品的挑战,苹果真的没有其他选择,只能让Swift同样的对开发者友好----开源。

Apple的Objective

苹果第一次宣布Swift是在一年前的WWDC上,当时Swift是以Objective-C的继任者的身份出现。Objective-C的历史可以追溯到1983年,直到Swift的发布,Objective-C一直是开发iOS应用的主要编程语言。Swift是一个更加现代的语言,它增加了许多野心勃勃的功能,旨在帮助新程序员学习如何编写代码,并且帮助经验丰富的程序员避免出现严重的编程错误。

 虽然苹果对开源并不陌生,它曾先后开源了Darwinwebkit。前者是OS X操作系统的基础,后者是Safari浏览器的基础代码。但是苹果从未开源Objective-C,尽管从技术上来说,可以使Objective-C在其他操作系统上运行。但是缺少来自苹果的支持使得跨平台的编码变得十分困难。这也是Microsoft和它的.NET开发平台的机会。

 一家名为Xamarin公司长期提供开发工具,这个工具使得开发人员能够使用微软的语言来构建软件,可以运行在WindowsLinuxiOS上,Android和更多。这意味着开发者可以不必同时用Java来支持Android,用Objective-C来支持iOS。他们甚至可以使用相同的代码为基础,台式机和服务器端应用程序。

虽然大部分的iOSOS X开发人员仍然使用Objective-CSwift,苹果能够通过让Swift在各种操作平台上可用来与Microsoft竞争。然而其结果可能在某种程度上意味着苹果公司自己的编程语言,最终可能被用来制造用于应用程序的Andr​​oid竞争对手。但苹果认为这种风险没有确保开发者的衷心和支持重要。

 How Open Is Open?

在博客中,苹果写道,它的开源版本将包括在标准协议下的Swift生态系统的核心部件--包括编译器和标准库,但细节仍然稀疏,没有人知道具体会开放到什么程度。

苹果将保留关键权限,这是完全可能的。就像最初创建的Java的公司一样。苹果甚至可能最终打了退堂鼓使得Swift并不开放,就像FaceTime,它曾经承诺将是一个开放的视频通信标准。无论如何,这对Swift来说是一个很大变化,这是曾经仅可用于苹果自己的平台的编程语言。

 苹果本身也将有助于将Swift应用于Linux操作系统,并具有直接访问苹果公司使用的实际运行用Swift构建的软件的代码,其他的公司也将更加容易地支持Swift。目前还没有提及,但是,开源它的Cocoa interface,这是另一块iOSOS X的应用程序的核心!

尽管如此,在任何条件下,苹果开源Swift也应该给开发商一些保证,使得开发者不会出现在像在搜索巨头Google使用甲骨文的Java编程语言而进行的斗争所面临的法律困境。甲骨文称,谷歌通过创建自己的类似Java的编程平台为Android侵犯了其知识产权。现在很难说,这种影响大多数开发者的情况将会怎样收场。但是,像苹果公司可以提供一些保证,开发人员将能够以自己的需要修改或者改进这些工具,通过编程语言和其他核心开发技术融入到开源领域,而不必面临法律困境。毕竟,应用的开发足够困难即使你的邮件没有收到诉讼。

原文链接 :http://www.wired.com/2015/06/open-sourcing-no-longer-optional-not-even-apple/

对这篇文章感觉如何?

太棒了
0
不错
0
爱死了
0
不太好
0
感觉很糟
0
Write the code, change the world. BLOG

    You may also like

    Leave a reply

    您的邮箱地址不会被公开。 必填项已用 * 标注

    此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据

    More in:开源思考

    开源思考

    人人必读!如何提升用户体验?

    用户体验不是奢求!为什么呢?因为随着物联网,可穿戴设备,移动设备和基于虚拟现实的计算设备的发展,用户体验变得越来越重要。著名的未来主义家 Mark Pesce 在最近的推文上说得很好:“我想指出的是,虚拟现实具有深远意义的用户体验,它能给我们提供思考的空间”。Pesce 的看法显然一针见血,但是我们也需要将他的观点在增强式、沉浸式和交互式的用户体验方面延伸开,让企业计算让消费类计算变得直观和满意。因为不只是虚拟现实技术能将这些方面带入大家的视线内,还包括可穿戴设备、移动设备和新兴的物联网在内的其他可连接设备也注重这点。
    开源思考

    受信息化和自动化冲击,可能将消失的十大工作类型

    就业市场即战场,并且未来可能将变得更糟。人们除了同其他求职者同台竞技以外还需要面临机器人带来的巨大挑战。机器人已经和人类工作了很长一段时间,比如制造业,机器人有助于更快、更高效的完成任务。随着认知计算和人工智能的进一步发展,我们将看到更多的行业,从食品行业到客户服务都将受到自动化的影响。英国牛津大学马丁学院的研究显示在美国大约47%的就业机会正面临计算机化和自动化的挑战,这就意味着接近一半的就业机会都可能变得自动化。但是哪些行业将首当其冲被替代呢?人工智能和机器人让很多人面临失业的危险,下面列出即将被机器人替代的十大行业。
    开源思考

    你好,开源,作为学生的偶们怎么才能为你献力呢?

    作为学生,参与到开源的世界中无疑是一种提高自己编程技巧很好的方式。并且Linux Story 小编也觉得在我们收获了开源的果实的同时,为开源世界种下一颗自己的种子也是不错的想法呢。从经验上来说,说不定它就可以为你的生涯打开一扇别样的窗户呢。可是,我们要怎么样才能够参与到开源的世界中,并且贡献自己的一份力量呢?
    开源思考

    GNU宣言发表 暨 自由软件运动 30 年

    1985年,Stallman 正式成立了自由软件基金会,同年发表了著名的《GNU宣言》,掀起“自由软件运动”。时至今天2015年,FSF已经成立30年了,开源和自由软件的理念还在继续着这项影响深远的软件行业运动。