TIOBE近日公布了最新一期的编程语言排行榜,除Java、C、C++依旧强势占领前三甲的位置外,前十名的其他语言均有小幅波动。本期榜单中,VB在坚守了两个月第四名的位置后,本期下降一位,与上期排名第五的PHP互换位置;JavaScript在经过一个月的调整后小幅跳升,排名第八,这也是这门脚本语言的历史最好成绩。Perl和Delphi均下降一位,分别排名第九和第十。
Visual Basic与PHP的暗战
本期值得我们关注的是PHP与VB的又一次位置互换。VB在历期榜单中曾一度占据第四名的位置不败,仅在08年12月的榜中被PHP反超过一次。本期榜单再次被PHP反超。
细数编程语言的历史,谁都不能否认Basic语言的经典与强悍,这种简单易学的直译式编程语言曾经统治过一代程序员的思维方式;而微软的Visual Basic的可视化编程又使Basic在C、C++的时代独树一帜,成为Windows平台的专业开发工具;即使进入Web时代,我们依然无法分辨是ASP给了VB第二个春天,还是VB成就了ASP。
但一门编程语言无法撇开时代背景与应用场景。虽然微软的.NET平台对VB.NET的支持丝毫没有懈怠,但C#的强势崛起与Web应用复杂度的增加使VB在Web时代一直处于比较尴尬的境地。在Win Form方面,C#集Java与众多编程语言优秀特性于一身的诱惑使众多程序员如获至宝;ASP.NET时代来临,众多新时代的程序员也意识到C#在Web方面丝毫不比VB差,微软自身平台的竞争就使VB明显处于劣势。
与VB不同,PHP自诞生以来就专注于Web。Web开发领域三足鼎立,Java更专注与企业级应用;而PHP的开源、跨平台、同样的简单易用使PHP自诞生之日起就在语言层面上挑战着VB的市场。在中小型项目中,与其说是ASP与PHP的争夺不如说是PHP与VB在语言层上的暗战。而PHP5释出的优秀OO特性和社区出现的众多MVC框架也在不断吞噬着VB的地盘。VB与PHP这场长达十年暗战的最终胜者是谁?大家不言而喻。
让我们来回顾一下这两种语言的历史。
Visual Basic
Visual Basic诞生于1991年,是微软开发平台的起家产品,至今已有17年的历史。Visual Basic是一种可视化的、面向对象和采用事件驱动方式的结构化高级程序设计语言,即可用于开发Windows环境下的各类应用程序,也可用于Web应用程序的创建。它简单易学、效率高,且功能强大可以与 Windows 专业开发工具SDK相媲美。在Visual Basic环境下,利用事件驱动的编程机制、新颖易用的可视化设计工具,使用Windows内部的广泛应用程序接口(API)函数,以用动态链接库(DLL)、对象的链接与世隔嵌入(OLE)、开放式数据连接(ODBC)等技术,可以高效、快速地开发Windows环境下功能强大、图形界面丰富的应用软件系统。
随着互联网的兴起和其他编程语言技术更新,VB在应用场景和新特性方面曾暗淡过一段时间。但微软不会忘记VB这位曾在开发平台方面开疆破土的功臣。在微软为迎接互联网热潮而推出的ASP技术中,VB再一次获得兴盛。此后每一次微软技术的浪潮,Visual Basic都会随之获得新生。
PHP
PHP最初是1994年Rasmus Lerdorf创建的,刚刚开始只是一个简单的用Perl语言编写的程序,用来统计他自己网站的访问者。后来又用C语言重新编写,包括可以访问数据库。在1995年以Personal Home Page Tools (PHP Tools)开始对外发表第一个版本,Lerdorf写了一些介绍此程序的文档,并且发布了PHP1.0。
此后,越来越多的网站使用了PHP,并且强烈要求增加一些特性,比如循环语句和数组变量等等,在新的成员加入开发行列之后,在1995年中,PHP2.0发布了。第二版定名为PHP/FI(Form Interpreter)。PHP/FI加入了对mSQL的支持,从此建立了PHP在动态网页开发上的地位。到了1996年底,有15000个网站使用 PHP/FI;时间到了1997年中,使用PHP/FI的网站数字超过五万个。随着PHP5的发布和更多对面向对象的支持,PHP正不断巩固自己在Web开发领域的王者地位。
前十名编程语言的长期趋势
#p#
其他编程语言
排名21到50的编程语言,排名第21位的COBOL虽上升一位,但依然在前20名榜单之外。
Position | Programming Language | Ratings |
---|---|---|
21 | COBOL | 0.464% |
22 | MATLAB | 0.458% |
23 | Lisp/Scheme | 0.452% |
24 | Falcon | 0.434% |
25 | FoxPro/xBase | 0.417% |
26 | Ada | 0.336% |
27 | Fortran | 0.323% |
28 | LabVIEW | 0.233% |
29 | PowerShell | 0.227% |
30 | Prolog | 0.213% |
31 | Erlang | 0.194% |
32 | Objective-C | 0.177% |
33 | Scratch | 0.174% |
34 | Haskell | 0.167% |
35 | Scala | 0.165% |
36 | Transact-SQL | 0.165% |
37 | ML | 0.159% |
38 | Alice | 0.150% |
39 | Awk | 0.148% |
40 | NXT-G | 0.148% |
41 | Focus | 0.143% |
42 | Groovy | 0.134% |
43 | Euphoria | 0.129% |
44 | Smalltalk | 0.128% |
45 | Progress | 0.123% |
46 | Bourne shell | 0.121% |
47 | CL (OS/400) | 0.108% |
48 | Tcl/Tk | 0.108% |
49 | Forth | 0.106% |
50 | Q | 0.104% |
下面是排名51-100的语言:
ABC, AD, Algol, Alpha, APL, Applescript, bc, Beta, Boo, C shell, Caml/F#, cg, Clean, Clojure, cT, Curl, Dylan, Eiffel, Factor, Icon, IDL, Inform, Io, J, Lingo, MAD, Magic, Maple, Mathematica, MAX/MSP, MOO, MUMPS, Natural, Occam, Oz, PILOT, PL/I, Postscript, PowerBuilder, R, REALbasic, Revolution, REXX, SIGNAL, SPSS, SuperCollider, VBScript, Verilog, VHDL, XSLT
编程语言类别
下面给出了编程语言类别的一年变化趋势,我们可以看到今年大热的动态语言有2.2%的下跌。
Category | Ratings March 2009 | Delta March 2008 |
---|---|---|
Object-Oriented Languages | 55.9% | +1.2% |
Procedural Languages | 39.7% | -2.9% |
Functional Languages | 3.3% | +1.5% |
Logical Languages | 1.1% | +0.1% |
Category | Ratings March 2009 | Delta March 2008 |
---|---|---|
Statically Typed Languages | 59.2% | +2.2% |
Dynamically Typed Languages | 40.8% | -2.2% |
【历期榜单回顾】