在JVM上运行的五大脚本语言(Top five scripting languages on the JVM)


        遵循软件开发工具,在过去十年中的任何人都知道,长期的“Java”指的是一双的技术:Java编程语言和Java虚拟机(JVM)。Java语言被编译成字节码在JVM上运行。通过这种设计,JAVA提供可移植性。

        然而,语言和JVM,已越来越多地在相反的方向移动。语言已变得越来越复杂,而JVM已经成为最快和最有效的执行平台之一。Java的许多基准,等于如编译语言生成的二进制代码的性能C和C + +的。日益复杂的语言和卓越的性能,可移植性和可扩展性的JVM已经创建了一个开放的新一代编程语言。这些语言缺乏Java的语法超载(通常称为“仪式”轻蔑) - 也就是多余的代码量做实际工作的代码前,需要手摇的,可以书面 - 但利用JVM的。

        [PDT的Eclipse,NetBeans中,NuSphere PhpED的,和Zend Studio导致Web开发的一个IDE的能力领域。见“ InfoWorld的审查:8个PHP的电动工具 “|有了所见即所得的原型环境和预先设定的图形组件,快速Web开发工具可以帮助你更快地构建应用程序-但缺乏灵活性。见“InfoWorld的审查:用于快速Web开发工具 “]

        在这篇文章中,我研究这些语言的少数,比较和对比,并确定他们满足特别的需求。我自己是自由和开放源码JVM语言限制。令人惊讶的是,闭源的商业世界,有几相媲美的产品。一个突出的是冷聚变标记语言,这是Adobe的冷聚变的Web应用程序开发环境的一部分。

        技师上存在分歧,究竟是一种脚本语言。在其最窄的定义,它是一种语言,使开发人员编写的快速方案。这些方案一般解释或半编译的,而不是在传统的方式编制。这项检讨在选择的语言,我用了一个更广泛的定义,这是任何JVM语言简单,比Java代码。一些编译,其他半编译的,但都是适合快速发展。我把重点放在语言是用Groovy,JRuby,FANTOM,Jython中,和Scala。还有其他几个候选人,Clojure的分别是,JavaFX的NetRexx,我简要地覆盖在年底。

        今天JVM的脚本语言,自然分成两组,基于他们的采用率。Groovy和JRuby落入流行的阵营,而​​其他有特殊的球员 - 也就是说,他们呼吁,目前一个小社会。这一点很重要,但要注意,Groovy和JRuby也特殊的球员,两年前,因此没有理由相信利基语言是永久降级的边缘。我认为出现的可能性,有利于斯卡拉,然后FANTOM,最后的Jython。正如我解释后,我觉得Jython的时刻已经在阳光下可能来来去去。

JVM脚本语言第1号:Groovy的-强大的,高层次的,企业的友好
JVM脚本语言第2号:JRuby的​​-比Ruby更好的Ruby?
JVM脚本语言第3号:Scala-快速,多范例编程
JVM脚本语言第4号:FANTOM - Java和网加性能。
JVM脚本语言第4号:Jython - JVM上的Python。

顶部的脚本语言在JVM上
  Groovy JRuby Scala FANTOM Jython
样式/打字 OO /动态 OO /动态 面向对象,功能/静态 00 /静态 OO /动态
蓝本 Java Ruby N / A N / A Python
执行 编译 编译,解释 编译 半编译 编译
平台(S) JVM JVM JVM JVM,NET CLR JVM
与Java的整合 优秀 优秀 优秀 公平 优秀
执行速度 公平 公平 优秀 非常好 放慢
工具支持 广泛 公平 广泛

  原文http://www.infoworld.com/d/developer-world/top-five-scripting-languages-the-jvm-855?page=0,0如下:

        Anyone who has followed software development tools during the last decade knows that the term "Java" refers to a pair of technologies: the Java programming language and the Java Virtual Machine (JVM). The Java language is compiled into bytecodes that run on the JVM. Through this design, Java delivers its vaunted portability.

        The language and the JVM, however, have been increasingly moving in opposite directions. The language has grown more complex, while the JVM has become one of the fastest and most efficient execution platforms available. On many benchmarks, Java equals the performance of binary code generated by compiled languages such as C and C++. The increasing complexity of the language and the remarkable performance, portability, and scalability of the JVM have created an opening for a new generation of programming languages. These languages lack Java's syntax overload (often referred to disparagingly as its "ceremony") -- that is, the amount of excess code that needs to be cranked out before the code that does the actual work can be written -- but take advantage of the JVM.

        [ Eclipse PDT, NetBeans, NuSphere PhpED, and Zend Studio lead a capable field of IDEs for Web developers. See "InfoWorld review: Eight PHP power tools" | With WYSIWYG prototyping environments and preconfigured graphical components, rapid Web development tools can help you build applications faster -- but with less flexibility. See "InfoWorld review: Tools for rapid Web development" ]

        In this article, I examine a handful of these languages, comparing and contrasting them, and identifying the needs they satisfy particularly well. I limit myself to the JVM languages that are free and open source. The closed source, commercial world, surprisingly, has few comparable offerings. The one standout is Cold Fusion Markup Language, which is part of Adobe's Cold Fusion Web application development environment.

        Technologists differ on what exactly is a scripting language. In its narrowest definition, it's a language that enables the developer to write quick programs. These programs are generally interpreted or semicompiled, rather than compiled in the traditional manner. In choosing the languages for this review, I used a broader definition, which is any JVM language that is simpler to code in than Java. Some are compiled, others are semicompiled, but all are suitable for rapid development. The languages I've focused on are Groovy, JRuby, Fantom, Jython, and Scala. There are a few other candidates, namely Clojure, JavaFX, and NetRexx, which I cover briefly at the end.

        The JVM scripting languages today naturally divide into two groups based on their rate of adoption. Groovy and JRuby fall into the popular camp, while the others are niche players -- that is, they appeal to a small community at present. It's important to note, however, that both Groovy and JRuby were also niche players two years ago, so there is no reason to believe that a niche language is relegated permanently to the margins. I believe that the likelihood of emergence favors Scala, then Fantom, and finally Jython. As I explain later, I think Jython's moment in the sun has probably come and gone.

JVM scripting language No. 1: Groovy -- powerful, high-level, enterprise-friendly
JVM scripting language No. 2: JRuby -- a better Ruby than Ruby?
JVM scripting language No. 3: Scala -- fast, multiparadigm programming
JVM scripting language No. 4: Fantom -- Java and .Net plus performance
JVM scripting language No. 5: Jython -- Python for the JVM

Top scripting languages on the JVM
  Groovy JRuby Scala Fantom Jython
Style / typing OO / Dynamic OO / Dynamic OO, Functional / Static OO / Static OO / Dynamic
Modeled on Java Ruby N/A N/A Python
Execution Compiled Compiled, Interpreted Compiled Semicompiled Compiled
Platform(s) JVM JVM JVM JVM, .Net CLR JVM
Integration with Java Excellent Excellent Excellent Fair Excellent
Execution speed Fair Fair Excellent Very Good Slow
Tool support Extensive Fair Extensive Little Little

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值