苹果应该开源Swift的7个理由——以及不应该开源Swift的7个理由

苹果的新编程语言迅速上市才短短几个月,但苹果的忠实粉丝们已经为之倾倒。他们反复使用“更干净”、“更简单”、“现代”和“强大”这样的词。

然而,世界上的其他人只能在假设的情况下谈论Swift——尽管编码工具是免费的,但它们只能在Xcode或游乐场中运行,而这些游乐场只能在苹果的硬件上运行。当然,如果你真的很绝望,a聪明的网站让你尝试一些基本的Swift代码,只要你不接触库。

[另一个是InfoWorld:10特点是苹果“窃取”的Swift编程语言|苹果的Swift一开始很简单|InfoWorld的“iOS 7开发者”特别报道独家报道了苹果移动操作系统的花哨功能,以及如何驾驭它们。|与InfoWorld的最新开发者新闻保持同步开发世界通讯。]

这有点奇怪。近年来,编程语言的创造者们已经想尽办法让他们的代码在尽可能多的不同计算机上运行。这意味着开源他们的工具,尽一切可能宣传他们的工作。

苹果公司从来没有走过和其他公司一样的道路。最好的办法可能是Swift向所有人开放,但这并不意味着苹果会这样做。我们也不应该认为免费提供产品符合苹果或我们的最佳利益。像Swift这样的语言的开源问题比看起来要棘手得多。

以下是苹果应该开源Swift的7个理由,接下来是它不可能实现的7个理由。

为什么苹果应该开源Swift:开源推动创新在编程领域,新思想、工具和架构通常都是从开源开始的。诸如JavaScript、PHP、Clojure和Haskell等突破语言都拥有吸引编码人员的开源引擎。节点。例如,js将JavaScript带到服务器上,这要归功于V8和Rhino等开源JavaScript引擎。如果你想获得mind share,最简单的机制是将代码免费发布到代码共享网站上,比如GitHub或Sourceforge,并尽可能广泛地传播。开发人员会蜂拥而至,扩展它的功能和范围。

为什么苹果不开源Swift:创新不是苹果真正想要的语法看起来不同,新闻发布会一再重复“新”一词,但从其核心来看,Swift只是一种维持现状、从现有图书馆中挤出更多活力的聪明商业策略。

尽管Swift很优雅,但它被设计用来支持在Objective-C中自下而上构建的世界。它的目的是很好地利用现有的数以百万计的Objective-C产品线,而不是取代它。这意味着苹果从一个新的开源项目的创造性热情中获益甚少。苹果希望保持其硬件平稳运行,而不是鼓励混乱的创新。

为什么苹果应该开源Swift:未来的劳动力资源正在开放源码的时代一位计算机科学教授告诉我,他喜欢Swift,但不能仅仅为了使用它而要求他的学生购买最贵的硬件。这就是为什么许多计算机科学课程都支持像Eclipse这样运行在商用硬件上的免费ide的重要原因,也是许多初级课程关注HTML5、JavaScript和它们的简单世界(如Firefox OS)的相同原因。自学成才的黑客走的是同样的路:开源或者死在尝试中。

如果苹果想在编程课程和自学成才的人群中获得吸引力,它需要在更便宜的硬件上快速运行。一旦孩子们在Eclipse上学习了Java,安装Android开发工具包就需要几分钟时间。攒够钱买一台Mac来安装Xcode则需要更长的时间。沉迷于Android开发的年轻一代可能会给苹果带来艰难的未来。

为什么苹果不开源Swift:市场决定程序员编写什么代码虽然为Android开发程序的简单性和经济性可能是事实,但最终学生们还是想找份工作。iOS继续为应用开发者带来最多的收入,而收入与工作岗位成正比。学生们总是想学习支持付费用户的平台,而目前,在低端安卓手机的世界里,这样的平台并不多。只要苹果处于领先地位,学习者就会跟风——即使他们必须购买昂贵的硬件才能进入“围墙花园”。

为什么苹果应该开源Swift:有了开源,“每个漏洞都是浅的”开源的一个核心原则是,许多眼球意味着所有的bug都是肤浅的。正因为如此,维护良好的开放源代码通常可以避免许多困扰新代码的问题。从事代码开发的社区范围之广对调试非常有利。有些人犯了错误,一个他们可能从未见过的人会纠正错误。如果Swift想要快速行动,增加功能,并确保最佳性能和安全性,它需要让程序员更容易仔细研究代码,并与每个人分享他们的调整。

为什么苹果不会开源Swift:围墙花园有优势开源世界可能会吹嘘它的记录,但没有办法衡量修复bug的效率。声明所有的错误都已修复等同于证明一个否定。问问那些值得信赖的OpenSSL这么多年来。

一个有围墙的花园可能会让我们信任一个可能被虫子和隐藏的后门破坏的黑盒子,但这有一个优势:坏人和我们一样困惑。无知不是值得庆祝的优势,但它可以成为优势。此外,苹果最尴尬的缺陷之一,“转到失败讽刺的是,很久以前的代码都是开源的。开源社区花了多少年的时间才找到它?

为什么苹果应该开源Swift:开放意味着扩散和新的市场曾几何时,苹果拥有智能手机世界。然后是谷歌开源Android,赢得了惊人的市场份额根据最近的一项估计,85%的新智能手机。这对开发人员来说是个诱人的数字。开源提供了一种潜入市场、培育新设备和吸引大量新合作伙伴的秘密途径。现在有了Android电视、相机、笔记本电脑,甚至冰箱。iOS界最大的新闻是,iphone现在有了不同的颜色。

为什么苹果不开源Swift:共享会导致碎片化分享可能会吸引更多的兴趣和新想法,但这往往会导致分裂和混乱——或者用安卓粉丝的话来说,就是“设备多样性”。Why would Apple want to encourage more versions of Swift to confuse people? It's hard enough to support the iPhone 4 and the iPhone 5 at the same time. Android developers curse the endless varieties.

另外,如果一些美妙的Swift新代码只能在Linux上运行,而不能在Mac上运行呢?这对苹果和它的客户有什么帮助呢?苹果的业务是为每个人提供顺畅运行的解决方案,而不是为程序员培养一场黑客盛宴。

为什么苹果应该开源Swift:开源确保了一个强大的工具生态系统如果你想为Android开发,你可以使用来自Java开源世界的任何工具。Eclipse吗?确定。IntelliJ吗?听起来不错吗?Ant或Maven从命令行?许多人喜欢它们。Java工具的列表很长,并且充满了大量的创新。关于这个列表,有一个重要的事实:Sun/Oracle没有建造任何一个。开源的Swift将培育开发者生态系统,并确保开发者有更多的理由选择Swift。

为什么苹果不开源Swift:开放是Android的胜利苹果销售的智能手机可能不是最多的,但它把智能手机卖给了那些更有可能购买更多应用程序的人。大量研究表明,iPhone用户在应用程序上的花费要比庞大的Android用户多得多——这就是为什么移动开发者首先将iPhone作为目标,使应用程序商店成为一个更强大的购物体验。如果开发人员只需按一个按钮,就能在iPhone和Android市场上部署Swift代码,那么苹果很可能会失去其在应用程序领域的主导地位。如果人们能在昂贵的iPhone或便宜的Android上获得同样的应用程序,低价很可能会胜出。

为什么苹果应该开源Swift:苹果欠开源吗苹果并没有独力完成斯威夫特的所有荣耀。它站在巨人的肩膀上。它不像苹果自己构建gcc或LLVM。Swift的基础始于开源世界,而苹果将其工作成果的开源作为回报是正确的。苹果通过Darwin开源了它对BSD的贡献。为什么不更?

为什么苹果不开源Swift:苹果不欠开源任何东西如果您使用开源工具构建工作,则不需要使工作公开化。当然,一些许可证(如GPL)要求您共享对该工具所做的所有更改,但这并不能扩展到新的内容。苹果在开源基础上建立了一些新的东西。我们都做了同样的事情,并保持它的所有权。苹果公司为什么不能呢?

为什么苹果应该开源Swift: Swift可以被克隆微软试图将。net保留在Windows平台上。然后开源社区克隆了它。同样的事情也会发生在斯威夫特身上。如果有人构建了一个完全开放的包,它可能会成为该语言的主导版本。程序员可以开始利用它,这样苹果就没有优势了。从一开始的开源Swift将使苹果能够抵御合法竞争对手的出现。

为什么苹果不开源Swift:谁想要克隆?一台iPad可能要花500美元或更多。在eBay上,运行安卓系统的克隆版本售价不到100美元。谁的商店总是排着长队,没完没了地等待?当然,某些地下室里的黑客可以克隆大部分Swift,但最终他们会想吃东西,这意味着得到有报酬的工作。除非有人提供资金支持,否则克隆产品仍将是很酷的demo,而不是繁荣的堆栈。在人们开始排队购买运行开源Swift的商用硬件之前,不会有太多的资金支持。

相关文章

这篇文章中,“苹果应该开源Swift的7个理由——以及不应该开源Swift的7个理由,最初发表于InfoWorld.com。关注最新的发展应用程序开发移动技术在InfoWorld.com上。了解最新的商业技术新闻,请跟随在Twitter上InfoWorld.com

阅读更多有关应用程序开发的信息在InfoWorld的应用开发频道。

这篇文章,“苹果应该开源Swift的7个理由——和7个不应该开源Swift的7个理由”最初发表于信息世界

加入网络世界社区有个足球雷竞技app脸谱网LinkedIn对最重要的话题发表评论。

版权©2014Raybet2

工资调查:结果在