与Java相比Jython性能表现

开发 后端
本文介绍了Jython性能,并列举了与Java语言相比Jython性能最出色的优点,

为什么需要Jython,由于继承了Java和Python二者的特性,Jython性能显得很优秀。

对Java类的无缝存取。

在Java中实现Python可以看到有趣的Java反射API的作用。反射使Jython能无缝地使用任何Java类。Jython从CPython中继承了很多优越性能,但CPython不像别的专为Python所写的一样,在C和Python之间有一些问题限制了C库函数的使用。在Jython中真正解决了这个问题,使编程的效率和生产力得到了很大改善,Jython性能有了很大提高。

由于与Java的无缝集成,Jython使任何部署了Java应用和框架的公司受益而不需要额外的工作。接受任何一种部门的编程语言,对任何一个公司而言都是不容易的,需要深思熟虑,因为这牵涉到整体结构、服务器和外围的工具。Jython作为Java的一个无缝集成的语言,可以在已存在的Java应用上无缝增加而不需要重大抉择。很多公司都花费了很多资金来建立Java的应用,这使采用CPython、Perl、Ruby、PHP和其他不能透明地集成已有Java实现的高级语言的效益降低,吸引力下降。而Jython对已存在的Java框架进行补充,且二者能无缝地结合,由此能看到Jython性能的优秀表现。

效率

计算编程语言的效率是一个很广泛的课题,它要考虑程序员的时间、总体复杂性、代码的行数、可用性、可维护性和运行效率。当然很多人不同意赋予这些变量的权重,经常是在不同的情况下偏重有所不同。Jython性能中,运行速度是可以与其他高级语言相比的,但速度并不是高级语言的目标和特点。区别在于当加速一个需要的应用时,将Jython代码翻译成Java更有效,这是由于Jython与Java的无缝集成性。另外对所有有效的Jaya类的直接访问增加了改进已存在的类的可能性。

动态类型

在Jython中你不必像在Java中那样声明类型,因为类型是在运行时决定的。Jython的列表和映射类型是高级的多态的Java类的实例。多态意味着对象能对不同的数据类型工作。例如Jython的list类型可以是一个数字的序列、字符串的序列、字符的序列或它们的组合。动态和多态性的列是对编程的极大的贡献,从很多已放弃显式的静态类型定义的高级语言中可看出它减少了代码的行数,降低了复杂性,提高了程序的效率,这是Jython性能又一优秀表现。

内省和动态执行

Jython性能的优秀还表现在,Jython有一些允许方便的对象内省和代码的动态执行的内部函数。内省是发现一个对象信息的能力,而动态执行是执行在运行时产生的代码的能力。该功能很大程度上减少了代码的行数并增加了程序的可靠性,使其更加方便维护。这也能使数据和程序结构或逻辑更好的集成而不影响重用性,因为所有的东西都是在运行时决定的。

***类函数和函数编程

Jython与Python一样有***类函数。***类函数是指能像变量一样的可调用的对象。***类函数在对事件处理和其他情况下有意义,这导致增加了Java内部类的功能。虽然Java的内部类与***类函数类似,但它在方便性与灵活性方面有很大的不足,这是由于Jython中的***类函数减少了Jython中的语法开销,大大提高了Jython性能。

Jython也包括了所有函数编程所需要的工具。这意味着强制的面向对象的函数编程在Jython中得到支持。这显然在教学上很有意义,它使Jython程序员能选择最适合于特定问题的编程语言而不是由语言强加。函数化的工具如列表包含、lambda表单、map、filter和reduce也对减少代码的行数、降低复杂性和名字重绑定数(名字重绑定有很大副作用)起到很大的作用。

学习周期短

任何Java程序员在数日内就能熟悉Jython。由于有很多内容,关键在于细节的学习,但仅仅用几天的时间就能拥有Jython的快速开发功能确实是很有价值的。对于那些从事测试和技术支持的小组通常并没有很多时间去学习复杂的Java代码,但通过对Jython的学习能在开销很少的情况下很快提高公司的技术水平和效率。

写一次,处处可用

由于Jython是用Java编写的且由于其可编译成Java字节码,因此Jython也具有Java的“写一次,处处可用”的特点。Jython能运行在任何可兼容的Java1.1‘或更高的Java虚拟机(JVM)版本的平台上,具有非常好的性能。另外你可将Jython应用编译成自足的字节码,它能运行在任何兼容的JVM上。在Linux上编译的应用能运行在有兼容JVM的任何其他平台上。

Java安全性

Java的安全性是特别的而且越来越重要。从沙箱到信号,Jython有能力使用Java的特别的安全框架。

代码清晰性

代码的清晰性是Python***的优点,当然也是Jython性能的***的优点。不必要的标点和行都避免了。Jython代码在可读性和清晰性方面近似于自然语言。这起源于Python对代码块和语句的简单描绘的承诺。缩排标记代码块,换行符标记新的语句,在此之上,语法通常支持。

【编辑推荐】

  1. 在代码中深入学习Jython语法
  2. 在Eclipse下配置Jython的简易流程
  3. 使用Jython脚本管理WebSphere资源
  4. 如何在Java中调用Jython
  5. 略谈Jython语言:什么是Jython?
责任编辑:佚名 来源: IBM中国
相关推荐

2009-07-14 18:45:26

Jython开发特性

2009-07-15 18:03:40

Jython功能

2009-07-17 13:45:39

Jython性能测评

2009-10-09 15:18:05

Jython

2009-07-10 13:09:53

.Net与Java S

2011-06-09 09:28:24

LevelDB

2009-07-10 17:33:39

jython语言什么是JythonJython

2009-07-16 13:09:46

Jython安装

2009-07-10 17:54:15

Java中调用JythJython

2009-07-14 15:20:25

Jython脚本Jython解释器

2012-05-18 10:14:47

JythonJavaJVM

2012-04-16 15:18:15

JythonJVM

2017-03-22 09:25:26

MySQLPostgreSQL对比

2009-07-15 16:29:39

Jython连接JavJavaUtils模块

2009-03-28 16:56:55

NehalemIntel服务器

2018-06-07 15:15:36

PHPPythonJava

2013-04-01 09:50:15

Web框架Web

2009-07-10 18:10:18

Jython编写SerJython

2013-10-23 17:17:31

Node.jsdoT

2011-11-18 15:01:32

笔记本评测
点赞
收藏

51CTO技术栈公众号