从Swift编程语言略谈开源

简介:

至少到目前为止,作为世界上商业最成功的公司之一,苹果似乎本应与开源扯不上什么关系。然而今天早间传来消息,苹果一如其半年前承诺的那样,正式开源去年推出的全新编程语言Swift。

我已经很久没有关注编程语言了。自从离开学校,在第一家服务的单位里曾短暂用C语言做过一些简单的应用开发后,那个代码世界终归与我绝缘了,我变身成为一个媒体人。

我最早在中学使用过BASIC,不过进入大学后学习的第一种编程语言却是Fortran,在法国BULL公司的小型机上。学习的目的,是为了科学和工程计算——其实我一次也没用上,倒是后来自学的汇编、Pascal和C语言,让我仍对编程保留了一定兴趣。

不过我终归不是那块料,也缺乏足够的热情,匆匆的转行让我未能像求伯君、雷军那样,成为一名在20世纪末充满自豪感的程序员,但是我始终关注软件领域的进展,并有幸见证了一大批中国本土软件公司的成长。

再说回到开源。这里可能还是要说明一下,开源其实并不意味着免费。如果这二者之间可以划等号,那我们完全不需要面对Open Source这样一个词,只要Free就好了。即便是开源,精明的商家同样能从中找寻到商业模式,继而获取利润。

当然,确实有那种狂热的爱好者,日复一日、义务地为某些开源项目贡献想法和代码,不断地编写文档,进行开发和调试,然后免费发布。可是这样的人毕竟是极其少数,况且在商业化如此发达的现今社会,完全免费的个人或小团体开源作品,很难吸引到足够多的用户。

互联网的快速发展,以及越来越多的商业公司加入大型开源社区,让开源与大规模应用得以联结。比如淘宝,它的应用服务器、操作系统和数据库,全部使用了开源软件。得益于此,淘宝确实省却了些许软件购买费用,不过它却必须雇佣大批的系统架构师和软件工程师,确保系统不会出现问题。

谷歌的安卓系统,也是开源项目成功的一大例证。在极短的时间里,安卓就成为市场份额最大的移动操作系统。然而正是由于开源,任何人都可以在其中加入自己的代码,于是我们就看到各种恶意软件的流行,以及其他更隐蔽的不明软件行为。

或许是出于对以上状况的担心,谷歌从安卓3.0开始收紧了控制权。严格意义上讲,安卓系统现在已经不是完全的开源。这也说明,开源并非是万能药,有的时候可能还是需要一定的控制。

苹果对Swift的开源,同样如此。如果你使用开源版本进行开发,那意味着你的项目无法进入苹果的App Store——苹果说这是为了用户的安全性和稳定性考虑。如果你想通过App Store销售自己的作品,那你必须使用苹果官方版本的Swift,并向苹果付费。

当然,不管开发者是否准备用Swift搞创收,开源的Swift势必会吸引越来越多的开发者,并且是基于苹果的设备进行开发。或许,这就足够了。




作者:胖头陀
来源:51CTO
目录
相关文章
|
6月前
|
存储 Swift
在Swift编程语言中,字典(Dictionary)
在Swift编程语言中,字典(Dictionary)
76 3
|
6月前
|
存储 Swift
在Swift编程语言中,浮点数类型
在Swift编程语言中,浮点数类型
83 6
|
6月前
|
存储 Swift iOS开发
在Swift编程语言中,集合类型`Set`
在Swift编程语言中,集合类型`Set`
51 2
|
6月前
|
Swift
在Swift编程语言中,整数类型
在Swift编程语言中,整数类型
65 1
|
6月前
|
编译器 Swift
在Swift编程语言中,定义变量
在Swift编程语言中,定义变量
66 1
|
6月前
|
存储 Swift
在Swift编程语言中,变量(Variable)和常量(Constant)
在Swift编程语言中,变量(Variable)和常量(Constant)
97 1
|
2月前
|
安全 编译器 Swift
探索iOS开发之旅:Swift编程语言的魅力与挑战
【9月更文挑战第5天】在iOS应用开发的广阔天地中,Swift作为苹果官方推荐的编程语言,以其简洁、高效和安全的特点,成为了开发者的新宠。本文将带领你领略Swift语言的独特魅力,同时探讨在实际开发过程中可能遇到的挑战,以及如何克服这些挑战,成为一名优秀的iOS开发者。
|
5月前
|
移动开发 安全 Swift
TIOBE 6月榜单:Swift强势挺进,编程语言版图的悄然变革
【6月更文挑战第21天】**TIOBE 6月榜:Swift晋升至第12,凸显其在苹果生态和移动开发中的重要性。自2014年发布以来,Swift凭借强类型、内存安全等特性赢得开发者青睐。排名上升源于苹果支持、开源跨平台、教育普及及性能提升。Swift的崛起影响行业生态,提升开发效率,预示着语言生态、跨平台和教育先行的趋势。未来,Swift有望扩展到更多领域,持续优化并深化教育影响。**
232 6
|
6月前
|
存储 Swift
在Swift编程语言中,Set
在Swift编程语言中,Set
66 2
|
6月前
|
存储 安全 Swift
在Swift编程语言中,数组(Array)
在Swift编程语言中,数组(Array)
72 3