TIOBE社区今天发布的2013年10月的编程语言排行榜,轻量级Java语言Groovy在本期榜单中排在第18位,取得了历史性突破,***闯入排行榜前二十。前五名内没有太大的变化,C语言岿然不动,Java紧随其后。和上月相比,只是排在第三位的C++和排在第四位的Objective-C换了位置,小编上周的猜测貌似是应验了。上周的黑马Transact-SQL下降一位,不过势头依然迅猛,和去年的同月相比提高了14位。
Groovy在本月击败了其他知名的JVM语言,比如Scala( 36位 ), JavaFX脚本(第41 )和Clojure( #76 ) 。让我们拭目以待,看它是否能在未来几个月保持其前20名的位置。
前20名榜单排行榜
关于Groovy
Groovy 是用于Java虚拟机的一种敏捷的动态语言,它是一种成熟的面向对象编程语言,既可以用于面向对象编程,又可以用作纯粹的脚本语言。使用该种语言不必编写过多的代码,同时又具有闭包和动态语言中的其他特性。
Groovy是JVM的一个替代语言(替代是指可以用 Groovy 在Java平台上进行Java 编程),使用方式基本与使用 Java代码的方式相同,该语言特别适合与Spring的动态语言支持一起使用,设计时充分考虑了Java集成,这使 Groovy 与 Java 代码的互操作很容易。(注意:不是指Groovy替代java,而是指Groovy和java很好的结合编程。)
9个杀手级 JVM 编程语言
Java虚拟机已经不再是仅仅局限在 Java 了,很多语言提供了脚本转换,可以让其他的程序在java虚拟机上运行,这样能够让更多的开发者能够依靠JVM在Java平台上大有作为。而且虚拟机以及 对应的字节码都是开源的,所以你也能很容易地生成对应字节码来做一款属于你自己的编程语言。我们今天来看看以下9种新的编程语言。
Groovy
JRuby
JRuby是用来桥接Java与 Ruby的,它是使用比Groovy更加简短的语法来编写代码,能够让每行代码执行更多的任务。就和Ruby一 样,JRuby不仅仅只提供了高级的语法格式。它同样提供了纯粹的面向对象的实现,闭包等等,而且JRuby跟Ruby自身相比多了很多基于Java类库 可以调用,虽然Ruby也有很多类库,但是在数量以及广泛性上是无法跟Java标准类库相比的。
Jython
Jython,aka JPython,属于***种专门为JVM专用的脚本语言。它能够用Python语言来高效生成动态编译的Java字节码。一些可选的静态编译方式能够被用 来开发applets,servlets,以及beans。作为Jython的***程序员,Jim Hugunin,现在已经停止了Jython的相关工作而去微软干活。所以这门语言的发展仅仅也就从2005-2008年,所以就现在看来Jython已 经无法与Groovy以及JRuby作为对手了。现在Jython可以在一些商业应用中找到,也已经得到了WebSphere Application Server以及IMB的商业Java EE产品部门的官方支持。
Clojure
Clojure是纯粹的函数式编 程语言。与Scala类似,Clojure已经有很多内置的并行运行基础建设能够让很多方法同时执行。Clojure也是 被设计为生成通用语言,能够生成.NET以及JavaScript。虽然Clojure也能被直接编译成Java字节码,但是无法使用动态语言特性以及直 接调用Java类库。与其他的JVM脚本语言不一样,Clojure并不算是面向对象的。
Scala
Scala经常被我们描述为多模 式的编程语言,因为它混合了来自很多编程语言的元素的特征。但无论如何它本质上还是一个纯粹的面向对象语言。它相比传统编 程语言***的优势就是提供了很好并行编程基础框架措施了。这是唯一一个在JVM中拥有actors -- 另一种并行编程代码生成器。Scala代码能很好的被优化成字节码,运行起来和原生Java一样快。
Kotlin
Kotlin是静态类型的语言, 也可以编程成Java字节码以及JavaScript,作为一个时髦又表现丰富的编程语言,Kotlin就是被设计用来生 产高性能要求的程序的,所以运行起来和Java也是不相上下。Kotlin可以从 JetBrains InteilliJ Idea IDE这个开发工具以插件形式使用。
Rhino
Rhino是使用Java编写的 开源的JavaScript引擎。当前是Mozilla公司在主导它的发展,Rhino的特点是为JavaScript加 了个壳,然后嵌入到Java中,这样能够让Java程序员直接使用。其中Rhino的JavaAdapters能够让JavaScript通过调用 Java的类来实现特定的功能。
Ceylon
Ceylon是一个通用的,静态 类型编程语言,也是基于阻塞以及面向对象的。据说这个语言深受Java的影响,而且它一开始就是被Red Hat公司设计为给大型团队合作完成大型项目来的。Ceylon的主要努力方向是将语言变得更加可读,更加可预期,更加工具化以及更加模块化。据 Gavin King所说,Ceylon将不仅仅只是个编译器,而将是一个可以取代Java SDK的新Ceylon SDK。
Fantom
Fantom能够在运行时为 JVM以及.NET或者JavaScript平台生成字节码,Fantom是与Groovy以及JRuby差不多的一样面向对 象的编程语言,但是悲剧的是Fantom无法使用Java类库,而是使用它自己扩展的类库。忘了说Fantom也包括actors,而且它***的优势就是 在网站上有一个非常完备卓越的API文档系统。
#p#
前十名编程语言长走势图
21-50编程语言排名:
后50名的编程语言排行:
(Visual) FoxPro, 4th Dimension/4D, ABC, Algol, Alice, APL, ATLAS, Automator, Awk, BlitzMax, CFML, cg, Clean, Clojure, cT, Dart, Eiffel, Forth, GNU Octave, Go, Icon, Inform, Informix-4GL, Io, J, J#, JScript.NET, LabVIEW, Modula-2, Moto, MS-DOS batch, NATURAL, NQC, Object Rexx, OCaml, OpenCL, OpenEdge ABL, PILOT, Pure Data, Q, Revolution, S, S-PLUS, Smalltalk, Squirrel, Standard ML, VBScript, VHDL, X10, Z shell