移动开发四国语言概览一:背景

当今移动开发炙手可热,以iPhone、Android、WP和Symbian、Bada等几大系统瓜分天下。

而相关的开发语言成为进入移动圣殿的钥匙,它们是:Objective-C、Java、C#和C++。

先来看看7月份的编程语言排名:

移动开发四国语言概览一:背景

大家看到了,排在前五名的是C、Java、Objective-C、C++和C#。经常关注语言排名的童鞋应该惊诧的发现,

Objective-C在7月份竟然超过了C++位居前三甲了。是的,这是历史上的第一次。TIOBE编程语言排名依据世界范围内

软件工程师、课程和厂商的数量,通过计算得来。这足以反映了语言的流行程度。说起这四国语言,不得不说一下排在

第一位的C语言,原因大家应该是心知肚明,C是四国语言的始祖。这么说应该是不为过的。

C语言

C语言与Java的排名之争持续了数年,2012年C语言已经成为霸主几个月之久了。足以看见C语言是深受广大程序员喜爱的一门语言。

说起C语言的来历,其实也是历史的必然,是水到渠成的。它并不是突然降临的。

20世纪60年代,一个划时代的ALGOL语言问世。说它是划时代,是因为它是第一个结构化程序设计语言,也被称作A语言。

1963年,剑桥大学的科学家通过A语言发展出CPL语言。

1967年,剑桥大学的Martin Richards将CPL简化,成为BCPL语言。

1970年,贝尔实验室的Ken Thompson对BCPL进行了修改,产生了B语言。而第一版的UNIX系统就是用B语言编写。

1972年,贝尔实验室的Dennis Ritchie在B语言的基础上做了进一步的改进和发展,设计出了一门新语言,这就是C。

1978年,贝尔实验室正式推出了C语言。而Dennis Ritchie和Brian Kernighan合著了著名的《The C Programming Language》,

史称”K & R C”,K 和 R标准的C语言。

1989年,C语言被ANSI标准化。这就是ANSI C。

2000年,ANSI C 确立后,之后是没有多少改变的。直到2000年2月,ANSI采用了ISO的C99标准。

2011年,新的ISO标准发表,这就是C11.

从C语言发展的世界表可以看出,C语言一经推出、确立后,改变是很少的。这样就出现了一个现象,C语言的程序员凭着积累,慢慢的终成大师。

C语言的繁荣,对软件业界影响深远。很多程序语言都是从C语言发展而来的,让我们先来看看两个直系亲属:C++和Objective-C。

C++

1979年,贝尔实验室的Bjarne Stroustrup对C语言进行改进和扩充,为了满足程序的复杂性需要和便于大型软件开发的特点。此时为“C with classes”(带类的C语言)。

1983年,“C with classes”改名为C++,并引入了新特性。

1985年,发布第一版《C++编程设计语言》。

1989年,发布Release2.0.同时引入了一些新特性。

与C语言一样,一个语言的标准化进程是非常重要的,这样杜绝了方言的产生,对语言的发扬光大起到了重要作用。

下面列出几个几个标准化:

1998年,对应C++98。

2003年,C++03。

2007年,C++TR1。

2011年,C++11.

C++包含了C的全部特征、属性和优点。在业界影响至深。在移动领域,Symbian和Bada的开发语言都采用了C++,这种Native语言运行的速度是非常快的,较之Java和C#有着运行速度的优势。虽然今天的手机配置越来快高,速度越来越快,但这样还是弥补不了Java和C#的速度之痛,在游戏领域,这点是令人诟病的。另一方面,C++的开发速度就并不能和运行速度相比了。C++,在很多人眼中是很难的,尤其在界面方面。而Bada系统提供的UI库是非常容易使用的,而Symbian后来的版本都加入了Qt库的支持,这点相信大家都知道,Qt库就是做图形界面出名的,在业界如雷贯耳。这两方面都弥补了C++在手机领域开发速度的不足。相信大家用上之后都会觉得不错。

Objevtive-C

这门语言是很传奇的,就像已故的乔帮主一样。从我个人的理解上,Objective-C是跟乔帮主分不开的,虽然它并不是乔帮主发明的语言。

1980年代初,这个时间段与C++相仿。Brad Cox发明了Objective-C。

1985年,Steve Jobs(被我们俗称为乔帮主)被自己创立的Apple公司“开除”(这个词不恰当,但也描述了事实),成立NeXT公司。

1986年,发布《Object-oriented Programming, An Evolutionary Approach》作为Objective-C最主要的语言描述。

1988年,NeXT 获得了Objective-C的授权,并开发出了Objective-C的语言库和NEXTSTEP开发环境。

1994年,NeXT和Sun联合发布了针对NEXTSTEP的标准典范,称为OPENSTEP。

1996年,Apple收购NeXT,NEXTSTEP/OPENSTEP环境成为Apple操作系统的基础,此开发环境的该版本被Apple称为Cocoa。

Objective-C被推出后数载,一直是默默无闻的。在C++的光芒下,人们并不知道有Objective-C这个C++的兄弟存在。Objective-C的流行程度是微乎其微的。甚至在语言排行榜上看不到踪影。看看这个对比图:

移动开发四国语言概览一:背景

参考文献

1、TIOBE编程语言排名网站

2、维基百科网站

3、钱能 《C++程序设计教程》

4、薛园园 《C语言开发手册》

来源:全速前行

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2012年7月11日
下一篇 2012年7月11日

相关推荐