中国领先的IT技术网站
|
|

Jython的发展之道:性能,性能,性能!

在移植到JVM上的语言中,Jython是比较主要的一支。鉴于JVM在企业级开发的影响,Jython对于推动Python在企业级开发中的应用有着重要的地位。本文是Jython项目领导的一次访谈,讨论了Jython的一些现状。

作者:张龙 译来源:InfoQ|2009-10-09 15:18

开发者大赛路演 | 12月16日,技术创新,北京不见不散


Java做为一门编程语言正在老去,但Java平台却生命力越来越旺盛。事实上由于企业级开发对JVM的依赖与信任,很多语言都视JVM为走向企业级开发的重要步骤之一。在过去的几年间有大量编程语言被“移植”到了Java虚拟机上,更有甚者单独为JVM创建了为数众多的语言。这包括Ruby(JRuby)、JavaScript(Rhino)、Groovy以及Python(Jython)。特别是Python在JVM上得到了蓬勃的发展,这都得益于最近Jython的前进势头。

Jython是Python编程语言的一种实现,运行在JVM上。它拥有超过10年的历史,然而大多数时间还是处于停滞不前的状态。最近,Jython领域变得活跃起来,这也带动了Python在JVM上的发展。近日InfoQ的Craig Wickesser采访了Jython的项目领导Frank Wierzbicki以了解Jython的当前状况以及JVM上的Python现状。

过去一年多的时间里,Jython开始变得繁荣起来,你是怎么看待这一点的?

我认为Jython 2.5(该版本的Jython对CPython的兼容性是最好的)实在是功不可没。我们现在拥有的Python应用和框架的数量都是前所未有的。比如说Django、Pylons以及Py2Web等等,SQLAlchemy 0.6很快也会与Jython协同工作了;除此以外,Twisted、TurboGears以及Grok上的工作也都在有条不紊地进行当中。所有这些都能访问Java程序库,就好像访问本地Python一样。

Sun Microsystems在Jython开发中扮演着什么角色?

Sun允许我全职负责Jython开发。我也对NetBeans团队做出了不少贡献,使得Python和Jython成为NetBeans IDE上的一等公民,而且还使得Jython、Django以及Pylons能与GlassFish协同工作。当然了,这些团队也为Jython的开发做出了卓越的贡献。

Jython 2.5最重要的变化是什么?

Jython 2.5的关注点在于让Jython成为现代化、兼容于CPython、卓越的Python实现。我们使劲浑身解数让尽可能多的纯Python框架和应用能够正常运行,但却没有把太多精力放在性能调优上,这是接下来要做的事情,换句话说,我们要使Jython的性能与CPython有一拼。

Jython 2.6的路线图如何?

我们现在将大部分精力都放在了性能上,同时还在不断增加新的特性。比如,我们计划改进与Java程序库的集成,尤其是需要替换掉Jython 2.2.x中一个名为“jythonc”的工具,该工具使得我们可以方便地实现某些Java集成并将结果打包为jar(一种Java分发格式)。由于内部设计的原因,jythonc还无法支持某些新的Python特性。我们确信还会有越来越多的应用和框架将运行在Jython上。我们期待这一天的到来:一旦应用无法运行在Jython上,那将是应用本身的bug而绝非Jython的问题。

还会有Jython3k么?

当然了!3.0是Python的未来,也是Jython的未来。坦白地说,我们还没有开始Jython3k的开发工作,但我希望一旦2.6发布后我们将会认真考虑这个问题。之所以等待2.6的发布是因为用于将Python 2移植到Python 3上的工具需要2.6作为起始点。

你认为会有人用Jython开发企业应用么?

我听说有人已经将包含Pylons或Django的WAR文件放到了产品中,还听说某些网上商店发现Jython与JDBC的集成在某些情况下要比CPython的数据访问更棒。Jython 2.5是个现代化的Python,在很多情况下都是非常不错的选择。

我不知道一般人是否了解Jython的历史——其首个版本发布于1998年7月。那时除了Java,Jython就是JVM上功能特性最全面的编程语言了。因此企业实际上已经使用Jython很长时间了。比如IBM WebSphere和Oracle WebLogic就使用Jython作为管理脚本语言。

你如何看待JVM上的Python现状?

对于JVM上的Python来说现在的一切都是非常美好的。由John Rose领导的Da Vinci Machine项目正致力于让JVM成为动态语言的最佳归宿。这项工作现在也已经融合到JDK 7中了,一旦我们可以利用这项工作的成果那Jython的执行效率就将得到极大的改进。目前我正在编写一个Jython原型以利用该工作的成果。

【编辑推荐】

  1. 基于JVM的语言正在开始流行
  2. Jython 2.5.1最终版发布
  3. Jython 2.5版本发布历程
  4. Python和Jython的区别简述
  5. Jython的安装步骤(Jython2.1)
【责任编辑:杨赛 TEL:(010)68476606】

点赞 0
分享:
大家都在看
猜你喜欢

读 书 +更多

Microsoft SQL Server 2005技术内幕:T-SQL程序设

SQL Server 2005微软官方权威参考手册。 是Inside Microsoft SQL Server 2005系列书中的第一本,SQL Server类的顶尖之作。 全球公认SQL S...

订阅51CTO邮刊

点击这里查看样刊

订阅51CTO邮刊
× 51CTO学院双十二活动