6月编程语言排行榜:框架之翼

 【51CTO独家特稿】TIOBE今天(6月7日)发布了最新一期的编程语言排行榜,在本期榜单中,曾夺得2009年年度编程语言的Google Go跌出前20名;TIOBE评论称,最初Google Go能得到如此成绩(Google Go推出三个月就得到了1.25%的增加),多数是出于人们的好奇心:一门由Google推出的编程语言。 php

6月编程语言排行榜Top20


 6月编程语言排行榜前20名榜单程序员

 

 

Google Go的确有其技术上的闪光点。Go自身支持并发编程,所以知足了对多处理器充分利用语言的需求;众多顶级程序员的参与其设计和代码改进也使得人们对它充满信心。但关键是,Go尚未在众多的编程语言中找到合适它的位置。web

在这期编程榜中,Java从新回到榜首的位置,第二名至第五名分别是:C、C++、PHP、Visual Basic。本期编程榜咱们关注的主题是开发框架(Framework)。shell

《设计模式》中对框架的定义是:框架就是一组相互协做的类,对于特定的一类软件,框架构成了一种可重用的设计。使用开发框架能够减小重复开发工做量、缩短开发时间,下降开发成本。同时,框架的引入和使用还可使程序设计更加合理和稳定,利于二次开发和维护。框架的使用在Web开发中应用尤其普遍。对于一个特定的项目,选择合适的语言平台及框架会使你如虎添翼。编程

Ruby——因框架而流行设计模式

Ruby是一门因开发框架而走红的语言。没错,是Rails框架才使Ruby变得如此热门。最初Ruby只是其创始人Matz对理想编程语言的一个实践,1993年开始编写,1995年12月才发布第一个版本。通过漫长的发展,自2000年后才被日文之外的开发者了解。ruby

Ruby是一门纯面向对象的语言,开发效率很是高。减小编程时候的没必要要的琐碎时间,令编写程序的人高兴,是Matz设计Ruby语言的一个首要的考虑。架构

在Ruby on Rails以前,Rails的创始人DHH曾尝试过使用PHP进行框架设计,但他最终选择了Ruby。灵活高效的Ruby语言搭配良好框架设计思想,DHH对Rails的解释是“最近的一条路”。从Rails这个名字咱们能够看出,DHH但愿软件开发能够沿着一个正确的轨迹不断向前,告别复杂的左转右转和讨厌的红灯;他也是按照这样的想法架构整个Rails。目前,Ruby on Rails已经进阶主流Web开发技术,使用其开发的各类网站不可胜数,详细能够参考51CTO以前的报道《TOP 50 用Ruby on Rails开发的网站》。关于Ruby on Rails创始人DHH的更多介绍请参考51CTO的创始人小传《Ruby on Rails创始人DHH:架构是将复杂的问题简单化》 
并发

PHP——最流行最泛滥框架

上文咱们曾提到,DHH曾尝试过使用PHP进行最初的框架设计,但他最后放弃了PHP。这里面涉及到的不是只编码效率和DSL能力,更多的是编程语言底层机制和运行效率。

PHP每次HTTP请求都要初始化资源,这个过程的开销很是大。尽管PHP解析器的运行速度快速且没有缺陷,但一旦使用框架,那么每次请求时初始化整个框架使性能的降低很是厉害,当使用一个很复杂的PHP框架的结果就是总体性能严重降低;同时,PHP语言自己的问题形成了PHP添加跨请求的高级特性至关困难,这是PHP自己一个很大的限制,可是反过来讲,正是这种限制使得PHP始终保持在一个比较简单的Web语言上面,而正是这一点才是PHP得以成为互联网流行Web编程语言的缘由。

但做为最流行的Web编程语言,数量众多的PHP程序员没法拒绝框架的诱惑,这也催生了PHP开发框架的泛滥。在51CTO对PHPCMS创始人钟胜辉的采访中他谈到:PHP的框架跟ROR的状况有所不一样,多而混乱;他同时提到:从长远来看,一个优秀的框架能够延长一个项目的寿命,下降维护和二次开发的成本。

目前主流的PHP开发框架主要有:Zend Framework、CakePHP、CodeIgniter、Symfony等,国内也涌现出ThinkPHP、FleaPHP等优秀PHP框架。对于PHP开发者而言,如何在众多框架中挑选一个适合本身项目的成了一个难题。关于PHP框架的介绍和选择,能够参考51CTO以前的报道《国外十大最流行PHP框架排名》和《几款主流PHP框架的优缺点评比》。

在Web开发领域,关于PHP和Ruby语言的争论一直存在,详细请参考51CTO的策划专题:大师论战Web开发:Ruby和PHP谁将称王?

还有不少

不仅是Ruby和PHP,在编程语言排行榜的众多语言中,几乎全部主流语言都有多种本身的框架,好比Python的Django、JavaScript的jQuery、C++的MFC以及著名的Java开发框架Spring、Hibernate、Struts等。事实是,开发框架的使用已成为当前软件开发的主流应用形态。

同一门语言的不一样框架每每都能实现相同的功能,根据自身项目和框架的特色进行选择尤其重要。在JavaScript方面,Dojo面向对象功能强大,提供丰富的库及UI控件;jQuery则以简洁、快速著称,对DOM对象和事件处理尤其擅长;prototype则显得更为轻量,善于处理Ajax的交互过程。

有时,基于同一种语言,不一样的框架也具备不一样的应用场景,好比对Java而言,Hibernate专一于数据层的持久化,Struts则精于业务逻辑的处理。

框架的诞生和演进不只拓展了编程语言的应用场景和范围,还大幅提升了基于语言平台的项目开发和维护效率。框架使语言如虎添翼,善用框架,可使你的项目锦上添花。

前十名编程语言走势图

前十名编程语言走势 

其余语言及排名

Position Programming Language Ratings
21 Go 0.519%
22 ActionScript 0.501%
23 Transact-SQL 0.486%
24 RPG (OS/400) 0.443%
25 Bourne shell 0.426%
26 Ada 0.416%
27 D 0.398%
28 JavaFX Script 0.393%
29 FoxPro/xBase 0.388%
30 COBOL 0.380%
31 Fortran 0.376%
32 Haskell 0.365%
33 S-lang 0.347%
34 Alice 0.340%
35 LabVIEW 0.333%
36 Logo 0.330%
37 Scratch 0.329%
38 Tcl/Tk 0.321%
39 J 0.305%
40 NXT-G 0.301%
41 Forth 0.294%
42 Prolog 0.254%
43 Scala 0.253%
44 Groovy 0.251%
45 Caml/F# 0.248%
46 CL (OS/400) 0.240%
47 Erlang 0.234%
48 Q 0.224%
49 Smalltalk 0.222%
50 ML 0.213%

下面是第50到100的编程语言排名

ABC, Algol, Alpha, APL, Applescript, Awk, Beta, C shell, cg, Clean, cT, Curl, Dylan, Eiffel, Euphoria, Factor, Falcon, Focus, Heron, Icon, IDL, Informix-4GL, Io, LabWindows/CVI, Lingo, MAD, Maple, Mathematica, MAX/MSP, Modula-2, MS-DOS batch, MUMPS, Natural, Occam, OpenCL, Oz, PL/I, Postscript, PowerBuilder, Progress, R, REALbasic, Revolution, REXX, SIGNAL, SPSS, VBScript, Verilog, VHDL, XSLT

编程语言类别

下面给出了编程语言类别的一年变化趋势,面向对象编程(Object-Oriented Languages)依然占到编程语言类型的半壁江山。

Category Ratings Jun 2010 Delta Jun 2009
Object-Oriented Languages 55.5% +0.3%
Procedural Languages 39.9% -1.0%
Functional Languages 3.2% +0.2%
Logical Languages 1.5% +0.5%


Category Ratings Jun 2010 Delta Jun 2009
Statically Typed Languages 62.8% +3.5%
Dynamically Typed Languages 37.2% -3.5%

 

编程语言类型走势:

 

【编辑推荐】

  1. 5月编程语言排行榜:动态语言的前世此生
  2. 4月编程语言排行榜:Top20里的“陌生人”
  3. 3月编程语言排行榜:Fortran归来
  4. 2月编程语言排行榜:Objective-C的咏叹调
  5. 1月编程榜发布:Google Go意外夺得年度编程语言
相关文章
相关标签/搜索