-
您现在的位置:网络学院 > 开发特区 > 开发语言 > Java
Java趋势:脚本语言引领风骚

出处:中国计算机报
责任编辑:pcedu

[03-8-20 14:45] 作者:张惠敏
-
  第三方实用程序

  通过基本框架帮助网格脚本

  IBM的 Bean Scripting Framework的应用程序使得将 Tcl、Python、Perl和其他脚本语言嵌入Java应用程序相当简单。Sun、Borland、BEA和其他厂商也提供类似应用程序。但是熟练的Java开发者,比如Mentro Graphics公司的David Kearns指出,支持一个脚本语言会有时间和费用上的风险,更不要说支持六个这样的语言了。

  在最近《Java World》的一篇文章中,Kearns描述了在Java应用程序中支持脚本会有的潜在风险。

  “Jython具有最快的脚本解释能力,同时具有强大的编程特性。”他说,“我最关注的其实是Jython的控制流语法,对你来说也许重要,也许不重要。因为有新的领域要涵盖,为Jython编写脚本或许比JavaScript和BeanShell需要更长的学习周期。如果需要用Python编写高级应用的脚本,我推荐去买本书。Python是一个很流行的编程语言,所以书店中会有大量的书籍可供选购。”

  其他Java脚本语言

  这里简单介绍一些其他被广泛使用的、与Java相关的脚本语言。

  · Beanshell。Beanshell是用Java写成的,一个小型的、免费的、可以下载的、嵌入式的Java源代码解释器,具有对象脚本语言特性。BeanShell执行标准Java语句和表达式,另外包括一些脚本命令和语法。它将脚本化对象看作简单闭包方法(simple method closure)来支持,就如同在Perl和JavaScript中的一样。

  可以将BeanShell交互地用于Java试验和调试,或者也可以将其当作简单的脚本引擎以用于你的应用程序。简言之,BeanShell是一个动态的解释型Java,加上了一些有用的特性和功能。还有另外一种描述BeanShell的方式:在很多方面,BeanShell之于Java就像Tcl/TK之于C。BeanShell是嵌入式的——你可以从Java应用程序中调用BeanShell,以便实时、动态地执行Java代码,或者为应用程序提供扩展的脚本能力。当然,也可以在BeanShell中调用Java应用程序和对象,动态地与Java对象和API协同工作。既然BeanShell是用Java写成,并且在应用程序中的某处运行,那么就可以随意传送参数到脚本中的“实时”对象,并且将结果作为参数返回。

  它具有以下的一些特点:使用Java反射API以提供Java语句和表达式的实时解释执行;可以透明地访问任何Java对象和API;可以在命令行模式、控制台模式、小程序模式和远程线程服务器模式等四种模式下面运行;与在应用程序中一样,可以在小程序中(Applet)正常运行(无需编译器或者类装载器); 解释器非常精简——jar文件大小为175k(如果去掉某些实用程序,那么就只剩下135k);纯Java写成,并且是免费的!

  · Jess。Jess是完全用Java写成的规则引擎和脚本环境。Jess的产生是受到CLIPS专家系统的启发,但是其本身正逐渐成长为一个完备的、独特的、动态环境。使用Jess,你可以构建Java小应用程序,这些程序具有根据你以规则声明的形式所提供的知识来“推理”的能力。

  Jess非常小巧、灵活,并且是已知规则引擎中最快的。核心Jess语言与CLIPS依然兼容,许多Jess脚本也是有效的CLIPS脚本。与CLIPS一样,Jess使用Rete运算法则来处理规则。Rete是一个非常高效的算法,用于解决复杂、艰深的多对多匹配问题。在CLIPS的基础上,Jess添加了许多特性:后向链表、运行内存查询以及操作和直接推理Java对象的能力。Jess同时也是一个强有力的Java脚本环境。通过它你能够创建Java对象、调用Java方法而无需编译任何Java代码。

ad
IT培训十大热门文章
·CCNA考试640-607报道(2)
·学习ATC与MLC的一点心得
·ORACLE应用常见傻瓜问题(3)
·AutoCAD认证新考核大纲
·三级等级考复习笔记(1)
·Windows Server2003的讨论
·java&xml的学习心得(一)
·CCNA考试640-607报道(1)
·ORACLE常用第三方软件介绍
·ORACLE应用常见傻瓜问题(2)

发给好友 投稿给我们 加入收藏 返回顶部

相关文章:

开源引擎使Java如虎添翼
诊断Java代码:设计轻松的代码维护
新标准、新功能 IBM更新Java工具
微软网络应用瞄准Java
Red Hat在产品中捆绑Java
实时Java就要飞入太空
Java标准之争暂停 Sun掌控争议犹在
中国情人节,给她一个浪漫的惊喜!
Java标准之争近期有望解决
Java对IT贡献巨大 竞逐无线与Web服务
内容搜索 
高级搜索
本栏今日焦点