频 道 直 达 - 新闻 - 读书 - 培训 - 教程 - 前沿 - 组网 - 系统应用 - 安全 - 编程 - 存储 - 操作系统 - 数据库 - 服务器 - 专题 - 产品 - 案例库 - 技术圈 - 博客 - BBS
51CTO.COM_中国领先的IT技术网站
找资料:

Sun开始支持Jython使JVM有望成VM

作者: 李宁 出处:IT168 2008-05-06 11:21    砖    好    评论   进入论坛
阅读提示:在近几年,随着计算机硬件性能的提高,脚本语言也受到了开发人员的不断追捧。然而,很多流行的脚本语言都是各自为战(如Ruby、Python、Perl等)。它们都拥有自己的解析器和丰富的功能库。Sun有力的抓住这一契机,顺应时事开发出了针对很多常用脚本语言的JVM版本,随着Jython的加入,JVM将有望成为VM。

在近几年,随着计算机硬件性能的提高,脚本语言也受到了开发人员的不断追捧。然而,很多流行的脚本语言都是各自为战(如Ruby、Python、Perl等)。它们都拥有自己的解析器和丰富的功能库。然而Sun可能是看到了脚本语言是未来开发语言发展的趋势,因此,为很多常用的脚本语言提供了JVM版本。

由于动态语言和以Java、C#为首的强类型语言有着本质的区别,因此,直接将它们编译成Java的字节码有些困难。因此,Sun想了个更好的方法,直接使用Java语言为这些动态语言来编写解析器。这样以来,不仅可以很容易解决动态语言的跨平台问题,而且也更容易实现。

一、JRuby:JVM的第一件动态语言外衣

第一个进入Sun的视线的是Ruby,Ruby是一种功能强大的面向对象的脚本语言,她可以使您方便快捷地进行面向对象编程。有时使用像Smalltalk、Eiffel或C++这样正式的面向对象语言来开发一些小项目显得有点"小题大作",而Ruby刚好可以满足这些面向对象编程的需求。当然了,您也可以使用Ruby进行普通的面向过程编程。Ruby的文本处理能力极强,与Perl不分伯仲。同时,Ruby的语法简单,还有异常处理以及迭代器等构造,使编程变得更简单了。

同时,Ruby还拥有一个类似Struts的MVC Web框架Rails,利用Rails可以非常快速的开发基于MVC模式的Web程序。Sun看到了Ruby和Rails的发展前景,类此,首先提供了基于JVM的Ruby:JRuby。因此,也可以这么说,JVM + Ruby = JRuby。

JVM + Ruby = JRuby

Sun不仅提供了JRuby,而且也在自己的NetBeans中提供了很好的Ruby/JRuby支持。

JRuby的开发界面

在以前,Sun很少为某种动态语言提供开发环境,而JRuby的特殊待遇可见Sun对JRuby的重视程度非同一般。这也许是Sun在将JVM变成真正的虚拟机(也就是去掉JVM前面的J)的第一步。由于JRuby运行在JVM上,因此,JRuby就理所当然地可以使用JVM及庞大的Java库了。也许这也正是Sun认为JRuby才是Ruby和Rails发展的真正王道的原因。

二、Jython:JVM阵营的又一力作

当Sun看到了JRuby/Ruby的成功后,并不甘心在JVM上只支持Ruby一种动态语言。因此,在支持JRuby后不久,Sun就雇佣了两位Python社会的开发人员来为JVM披上一件新的外衣,这就是Jython。

Jython是Python编程语言100%纯Java实现,它结合了Python和Java虚拟机和库的优点,成为了Java平台的有益补充。

最初的Jython又称为JPython,是一个十足的Java应用程序,它允许使用Python编程语言的语法和大多数特性。和其它编程语言比较,Jython有如下几个优点:

1. Python解释器shell的Jython版本可以对某些想法和API作便利的实验和研究。而不必经历一般的Java编译运行周期。

2. Python被设计成动态且通用的,因此你不必通过使用复杂的库(如用于Java反射和内省的库)来添加这些特性。这使开发更简单,而且它在自动测试框架中特别有用。

3. 部署简捷,提供了及时部署能力,无需花大量时间在打包和编译周期上。

4. 易于学习和使用,技术门槛低,可以轻松地找到大量的使用者。

三、总结

虽然在JVM上运行的这些动态语言在性能上可以略逊于原生的动态语言。但是由于它们可以和JVM无缝连接,因此,这些J...语言天生就具有了和Java语言一样强大的功能。正所谓抱棵大树好乘凉。看来以后Sun还会在JVM中支持更多的动态语言。当然,目前除了Sun官方提供的支持,第三方也有了很多关于其他动态语言的支持,如原生的Groovy。还有Tcl、BeanShell等。看来以后JVM这个词要消失了,也许我们以后要直接叫JVM为VM了。但愿这一天会早日到来。

【相关文章】

【责任编辑:莺锦 TEL:(010)68476606】

关于 VM  JVM  Jython  sun
专题
VMware技术应用
Sun以10亿美元并购开源数据库厂商MySQL
初探敏捷开发
WCF开发基础
体验Visual Studio 2008的魅力
我也说两句

匿名发表

(如果看不清请点击图片进行更换)


中 国 领 先 的 IT 技 术 网 站 ·
技 术 成 就 梦 想
·Java基础教程 (查看76423次)
·UML类图详解 (查看67334次)
·C++是垃圾语言?! (查看36777次)
·UML统一建模语言 (查看36640次)
·C#技术开发指南 (查看36531次)
·Java编程开发手册 (1196个砖)
·Java基础教程 (430个砖)
·C#技术开发指南 (311个砖)
·.NET开发手册 (245个砖)
·PB开发教程 (223个砖)
·Java编程开发手册 (657个好)
·Java基础教程 (577个好)
·.NET开发手册 (276个好)
·PB开发教程 (212个好)
·Delphi开发技术手册 (197个好)
订阅技术快讯
电子杂志下载
名称:SQL Server数据库管理精品黄皮书
简介:书中文章经过精挑细选,便于用户能根据自己的实际工作和学习,快速在本书寻找到相关资料。内容涵盖了SQL Server的安装与升级、语句查询、数据备份和恢复、自动化任务、数据同步、数据字典、安全和预防、性能和优化、集群等各方面应用信息,以及DBA管理人员在数据库管理工作中
名称:2007路由技术大全
简介:《2007路由技术大全》由51CTO.com网站特别策划制作,该书包括路由器技术、路由器产品、路由器配置、安全设置、路由器故障处理、路由器密码恢复,以及广大网友在实践使用中的心得经验和技巧文章,内容注重实用性,适用于初学者入门,也适合多年从业者提高,是一本实践和理论完
名称:网络安全精品应用黄皮书
简介:《2007精品网络安全黄皮书》包括了9个大类24个小类, 800余篇文章,内容包含了熊猫烧香病毒、DDOS攻击、ARP病等热点问题的介绍及解决方案。从病毒查杀、防范、系统、数据等各方面的安全设置到黑客技术的了解、防范,涉及到了安全应用的全部领域, 由浅至深内容全面。
反垃圾邮件技术应用
反垃圾邮件技术应..
Vista SP1对决XP SP3
Vista SP1对决XP ..
微软出价446亿美元收购雅虎
微软出价446亿美..
· 微软出价446亿美元收购..
· 龙芯要做中国的“奔腾”
· 2008年上半年全国软考..
· Windows Server 2008专..
· AMD Phenom三核处理器..
· 路由器设置与口令恢复
· 三层交换技术专题
· 微软Forefront企业安全..
· LAMP技术精解
· ARP攻击防范与解决方案
· 企业数据恢复指南
· 技术人求职简历完备手册
· Apache技术专题
· 首届中国IT工程师生态..
· 视频访谈:网管员如何踏..
· Linux——从菜鸟到高手
ARP攻击防范与解决方案
ARP攻击防范与解..
iSCSI应用与发展
iSCSI应用与发展
SQL Server 2008/2005全解
SQL Server 2008/..
· SQL Server 2008/2005..
· SOA 面向服务架构
· SQL Server 2008/2005..
· iSCSI应用与发展
· RAID——磁盘阵列基础
· Apache技术专题
· 中间件应用技术专题
· 三层交换技术专题
· SQL Server入门到精通
· Apache技术专题
· 国际文档格式标准开战
· 路由器设置与口令恢复
· 打造安全服务器
· SOA 面向服务架构
· PHP开发应用手册
· 企业数据恢复指南
ARP攻击防范与解决方案
ARP攻击防范与解..
SQL Server 2008/2005全解
SQL Server 2008/..
iSCSI应用与发展
iSCSI应用与发展
· iSCSI应用与发展
· 中间件应用技术专题
· SQL Server入门到精通
· SQL Server 2008/2005..
· SOA 面向服务架构
· Apache技术专题
· iSCSI应用与发展
· 三层交换技术专题
· Apache技术专题
· RAID——磁盘阵列基础
· 企业数据恢复指南
· 路由器设置与口令恢复
· SOA 面向服务架构
· ADSL应用面面俱到
· ADSL应用面面俱到
· 反垃圾邮件技术应用