`
zcz123
  • 浏览: 158872 次
  • 性别: Icon_minigender_1
  • 来自: 厦门
社区版块
存档分类

2012年1月编程语言排行榜:Objective-C成为年度语言

 
阅读更多

看看历史上各年度的年度语言都是谁:

年度 年度语言
2011 Objective-C
2010 Python
2009 Go
2008 C
2007 Python
2006 Ruby
2005 Java
2004 PHP
2003 C++

大家注意到去年的大奖得主是谁吗?Python!(参考去年1月的排行榜)非常悲剧的是,两届年度语言大奖得主Python在2011年风光不再,整整跌去了3.05%,仅剩下3.218%,还不及Objective-C一年中增加的份额,排名也下降3名,可以说是惨不忍睹。当然,Python的实际情况并没有那么糟糕,据我所知,Python的图书和Objective-C的图书差不多一样好卖,用Python来开发网站和做系统管理的人也越来越多,此外Google工程师Damon Kohler领导的SL4A等项目也在致力于使Python等脚本语言踏上移动开发的大船。另一个大输家是PHPWeb后端开发难兄难弟Ruby也情况不佳,看来无论如何,移动的确已经抢了Web的风头了。Lua的上升,一般也认为是因为移动游戏火爆的缘故。

除了Objective-C之外,风头最劲的就是C#了,大涨2.55%,名次更是进入三甲,将占据这一位置长达十年的C++拉下了马,也可以说一个历史时刻。这里面估计有很多原来的VB程序员转投吧,本来想说Delphi的,仔细一看,人家居然也是增长的……另外,应该有Windows Phone的因素吧,通过Mono你还可以用C#来开发Android和iOS应用。

C语言增加1.15%,是原来前三名里唯一增长的,其中缘由值得好好琢磨一下。我感觉随着云计算的发展,高性能成为服务器端系统软件的重点,C的优势会越来越明显。比如,前几天CouchDB项目创始人Damien Katz宣布转而专注开发Couchbase时,就强调新项目中已经放弃Erlang,转用C,因为在性能和底层控制上C无与伦比。未来一年,C与Java的王者之争是一个看点。

另一个份额增加较多的语言是JavaScript (+0.73%),之前我曾经分析过,实战中不用JavaScript的程序员其实越来越少,JavaScript实际的份额和名次肯定被低估了。而且,它是最有可能通吃各个领域的统一编程语言。随着包括移动终端在内的HTML5(它已经成为公认的未来)和服务器端Node.js发展,我相信JavaScript不久之后会进入排行榜的最前列。看看GitHub上的语言分布吧:

2012年哪些编程语言能成为黑马呢?很有难度。TIOBE评论中提到了F#, Groovy和R。我对前两者都不看好。F#的理由很简单,.NET阵营的技术人员总体惯性较大,对新技术不热衷,而且C#的迅速发展使得很多F#的优势也渐渐消失了。Groovy更多的应该是用作Java项目中的胶水用,相对小众,而且它还有Scala、Clojure等各种JVM语言做劲敌,日子肯定不轻松。

无论如何,函数式语言的重要性越来越强了:

分类

2012年1月份额

2011年1月相比变化
面向对象语言 57.1% +1.8%
过程式语言 36.8% -2.7%
函数式语言 4.3% +0.6%
逻辑式语言 1.8% +0.3%

但是,第一次进入前20的R很有潜力,因为,它是大数据时代的宠儿,进行数据分析的利器,假以时日,超过Transact-C、PL/SQL这些同类是正常的。

另外也别忘了Go,一旦有更多实际生产应用的证明,它还是会赢得不少拥趸的,毕竟,系统编程语言占据着巨大的市场份额,能够抢下几分之一,也足以进入前十了。

好了,闲话少叙,大家看榜吧。

2012年1月

名次

2011年1月

名次

名次变化 编程语言

2012年1月

份额

份额变化 状况
1 1 Java 17.479% -0.29%   A
2 2 C 16.976% +1.15%   A
3 6 C# 8.781% +2.55%   A
4 3 C++ 8.063% -0.72%   A
5 8 Objective-C 6.919% +3.91%   A
6 4 PHP 5.710% -2.13%   A
7 7 (Visual) Basic 4.531% -1.34%   A
8 5 Python 3.218% -3.05%   A
9 9 Perl 2.773% -0.08%   A
10 11 JavaScript 2.322% +0.73%   A
11 12 Delphi/Object Pascal 1.576% +0.29%   A
12 10 Ruby 1.441% -0.34%   A
13 13 Lisp 1.111% +0.00%   A
14 14 Pascal 0.798% -0.12%   A
15 17 Transact-SQL 0.772% +0.01%   A
16 24 PL/SQL 0.709% +0.15%   A
17 20 Ada 0.634% -0.05%   B
18 39 Logo 0.632% +0.29%   B
19 25 R 0.609% +0.07%   B
20 21 Lua 0.559% -0.08%   B

必须声明,这个榜单本身采集的是英文世界的数据,虽然在反映趋势上有一些参考意义,但与中国的实际情况不完全符合,而且,这张采样本身也有相当大的局限性。比如榜单中的排名肯定与JavaScript的实际使用率不匹配,毕竟现在不用JavaScript的项目越来越少了,它甚至还在大举入侵服务器端(参阅Node.js方面的介绍)。还有应用广泛的Shell排名也不高,但是在Unix/Linux类平台上,不用Shell的程序员应该也不会很多。《程序员》2010年8月刊的圆桌讨论“什么是最美丽的编程语言”中,许多专家也谈到了这一点。

TIOBE排行榜从长期来看意义更大(所以应该多重视5年、10年的变化),短期则只有参考价值。请大家注意,我们每月按时编译排行榜,目的是告诉大家技术趋势,而不是引发没有内容的编程语言口水战(这类评论通常都会被删去,相关不良记录也会记入发帖者的帐号)。

我们想特别指出的是,各种语言都有其自身的长处和缺点,笼统比较优劣毫无意义。而且就目前一般的编程任务而言,基本上各种语言都能胜任,开发效率也 和使用者的熟练程度密切相关。语言的此消彼长,关键在于社区,如果你热爱哪一种语言,请到CSDN开设博客,多写自己的心得、经验、各种层次的教程,让更 多人体验到这种语言之美,扩大自己的社区。我们欢迎有质量有内容的语言和框架比较的技术文章,坚决排斥浪费自己和他人时间和资源的口水战。 

来看看长期趋势图。

后30名排名情况。

名次 编程语言 市场份额
21 Assembly 0.550%
22 C shell 0.528%
23 MATLAB 0.515%
24 Visual Basic .NET 0.482%
25 NXT-G 0.478%
26 Go 0.474%
27 Fortran 0.434%
28 ABAP 0.418%
29 Scheme 0.415%
30 RPG (OS/400) 0.402%
31 COBOL 0.393%
32 SAS 0.339%
33 F# 0.338%
34 Scratch 0.334%
35 ActionScript 0.326%
36 Groovy 0.322%
37 D 0.320%
38 Forth 0.318%
39 Erlang 0.304%
40 PL/I 0.303%
41 Haskell 0.301%
42 Ladder Logic 0.299%
43 Prolog 0.292%
44 ML 0.291%
45 Q 0.276%
46 OpenEdge ABL 0.274%
47 Standard ML 0.274%
48 Smalltalk 0.260%
49 Tcl 0.259%
50 APL 0.245%

后50名的语言如下,其中你还知道哪些?

(Visual) FoxPro, ABC, Algol, Alice, Awk, Bash, bc, BETA, BlitzMax, Boo, Bourne shell, C++/CLI, CFML, cg, CL (OS/400), Clean, cT, Dart, Dylan, Eiffel, Factor, Icon, IDL, Io, J, JavaFX Script, JScript.NET, Korn shell, LabVIEW, LabWindows/CVI, Lingo, Max/MSP, Modula-2, MUMPS, NATURAL, Oberon, Occam, OpenCL, Oz, PowerShell, Revolution, S, S-PLUS, Scala, TOM, VBScript, VHDL, X10, XSLT, Z shell

更长期的数据。

编程语言 2012年1月名次 2007年1月名次 1997年1月名次 1987年1月名次
Java 1 1 5 -
C 2 2 1 1
C# 3 7 - -
C++ 4 3 2 7
Objective-C 5 46 - -
PHP 6 5 - -
(Visual) Basic 7 4 3 5
Python 8 8 26 -
Perl 9 6 6 -
JavaScript 10 9 25 -
Lisp 13 16 16 2
Ada 17 17 12 3

【说明】

TIOBE编程语言社区排行榜是编程语言流行趋势的一个指标。每月更新。这份排行榜排名基于互联网上有经验的程序员、课程和第三方厂商的数量。排名 使用著名的搜索引擎(诸如Google、 MSN 、雅虎)以及Wikipedia和YouTube进行计算。请注意这个排行榜只是反映某个编程语言的热门程度,并不能说明一门编程语言好不好,或者一门语 言所编写的代码数量多少。

这个排行榜可以用来考查你的编程技能是否与时俱进,也可以在开始开发新系统时选择语言时用来进行策略性的决策。排行榜的详细定义可以参考这里(英文)。

分享到:
评论

相关推荐

    编程语言排行榜

    2013年4月的Tiobe编程语言排行榜显示,Objective-C的使用份额相比去年同期增长了1.36%,成为排名前20位中增幅最大的编程语言。尽管如此,Objective-C的排名与2012年4月相同,仍然位列第四。值得注意的是,此次排行榜...

    2012年9月编程语言排行榜[收集].pdf

    2012年9月的编程语言排行榜揭示了当时编程语言的流行趋势。TIOBE Index是衡量编程语言受欢迎程度的重要参考,它基于全球互联网上各种搜索引擎的数据来分析不同编程语言的搜索量。这个榜单旨在反映编程语言的热度,而...

    Beginning Objective-C

    在2012年1月,它被宣布为TIOBE编程语言排行榜的冠军。 《Beginning Objective-C》这本书是一本非常实用的参考书,对于想要学习Objective-C的人来说是一个很好的选择。它详细介绍了Objective-C的基础知识和高级特性...

    Learn Objective-C On The Mac, 2nd Edition

    - **出版日期**:2012年7月23日 - **出版社**:Apress - **页数**:356页 - **ISBN**:978-1430241881 - **文件格式**:PDF - **文件大小**:9.01MB #### 二、书籍概览与目标读者 本书旨在为读者提供一个全面且...

    programming in objective c 5th

    1. **Objective-C语言介绍**:Objective-C是一种面向对象的编程语言,它扩展了C语言的功能,加入了Smalltalk风格的消息传递机制。该语言在苹果开发社区中占有重要地位,因为它是开发macOS和iOS应用的核心语言。 2. ...

    cocos2d-x 2012-03-31开发者大会演讲稿PDF(1)

    截至2012年3月31日,cocos2d-x已经发展成为一个成熟的跨平台游戏开发框架,不仅支持多种编程语言(如Objective-C、C++、JavaScript、Ruby、C#等),还支持多平台部署。随着HTML5版本的推出,cocos2d-x将进一步拓宽其...

    51CTO下载-开发月刊011期.pdf

    编程排行榜:2012年2月编程语言排行 - **Objective-C**: 该语言在2012年2月份的排行中继续上升趋势,其市场占有率已进入7%的行列。 - **Java和C**: 这两种语言依然占据着榜首的位置,显示了它们在编程领域的主导...

    iOS 6 Programming Cookbook

    - **技术背景**:Objective-C 是早期 iOS 应用开发的主要编程语言之一,本书涵盖了使用该语言进行 iOS 6 开发的相关技术。 #### 部分内容摘要 - **作者与版权信息**:本书作者 Vandad Nahavandipoor,版权所有 ©...

    2012年12月27 我的第一个iphone小程序

    标题 "2012年12月27 我的第一个iPhone小程序" 提示我们这是一个关于早期iOS应用开发的记录,时间可以追溯到2012年。在这个阶段,iOS编程主要使用Objective-C语言,Swift还未成为主流。这篇博客可能是作者分享他或她...

    IOS 6 编程 CookBook(iOS.6.Programming.Cookbook(2012.11))

    - **版本信息**:本书发布于2012年11月,是专门为iOS 6系统量身打造的教程,包含了该版本系统中的最新特性和功能。 - **内容概述**:通过一系列“食谱”式的小例子,本书帮助读者掌握如何利用iOS 6的各种API和技术...

    苹果中文版iOS应用开发指南-2012.12.5版.pdf

    【苹果中文版iOS应用开发指南】是一份2012年12月5日发布的教程,旨在引导开发者开始iOS应用的开发工作。这份指南详细介绍了从入门到提交App到App Store的全过程,适合初学者使用。它分为五个部分: 1. **开始**:这...

    Apress iOS 5 Recipes

    《Apress iOS 5 Recipes》是一本面向iOS开发者的实用指南,出版于2012年2月。这本书深入探讨了iOS 5平台的各种开发技术和最佳实践,旨在帮助开发者利用苹果的iOS SDK创建高质量的iPhone、iPad应用。通过一系列精心...

    Learn Cocoa Touch for iOS

    Objective-C是一种面向对象的编程语言,它是C语言的超集,这意味着Objective-C代码中可以包含纯C语言代码。Objective-C是开发iOS和macOS应用的主要语言之一。本书第二章将详细介绍Objective-C的基本概念和语法结构,...

    oc初识总代码

    Objective-C是苹果公司开发的面向对象的编程语言,它是C语言的一个扩展,主要用于iOS和Mac OS X操作系统上的应用程序开发。 在OC中,我们首先会接触到类(Class)和对象(Object)的概念。类是对象的模板,它定义了...

Global site tag (gtag.js) - Google Analytics