JythonPython的纯Java实现
Jython 是 Python 的纯 Java 实现。她无缝地结合了 Java 类与 Python,使用户能以 Python 语言的语法编写在 Java 虚拟机上运行的 软件。它的特点有:与相似的 Java 程序相比,Jython 极大的的减少了编程代码量。Jython 同时拥有解释器和编译器,使其无需编译就可以测试程序代码。
Jython 是一种完整的语言,而不是一个 Java 翻译器或仅仅是一个 Python 编译器,它是一个 Python 语言在 Java 中的完全实现。 Jython 也有很多从 CPython 中继承的模块库。最有趣的事情是 Jython 不像 CPython 或其他任何高级语言,它提供了对其实现语言的一切存 取。所以 Jython 不仅给你提供了 Python 的库,同时也提供了所有的 Java 类。这使其有一个巨大的资源库。
Jython 和 Python 强调了代码的简明性、方便性和易读性。Jython 使用缩排来对代码块定界以避免使用在 Java 中的大括号。Jython 用新的一行来表示一个新的语句的开始,并有几个重要的区别,如允许在每个语句后省略分号。Jython 没有像在 Java 中的 public、private 和 protected 存取符,这样就给程序员提供了快速开发所需要的灵活性,并将注意力集中在程序逻辑上。正像前面所提到的,Jython 不用明显的静态 的类型定义,故程序员不需要从程序逻辑转移到类型定义上来。
Jython 的历史要追溯到 JimHugunin,他是 Guidovan Rossum 在国家研究动力中心(CNRI)的同事。JimHugunin 认识到 Python 编程语言用 Java 实现的重要性,并实现了最初名为 JPython 的语言。由于要开发 aspectj(http://aspectj.org/),JimHugunin 不能继续致力于 JPython 了。所以当 Python 的开发者准备离开 CNRI 时,由当时也在 CNRI 的 Barry Warsaw 继续领导开发。
Python 和 Jython 项目组从 CNRI 离开后,在 Sourceforge 上转变为一种更开放的语言模型。在此期间,一个对 Jython(JPython)做了主要贡献的人 FinnBock 领导了 Jython 项目小组。正是由于 FinnBock 所做的杰出贡献使 Jython 现在成为一个如此有价值的工具。类似 Jython 这样的开放源代码项目与开发和维护它们的人一样杰出,从这个意义上说 Jython 因为有 FinnBack 的 贡献和指导而很幸运。另外一个对 Jython 做了最新有价值贡献的人是 SamuelePedroni。Samuele 的贡献主要在 Jython 的类装载、 导入机制等等。Finn 和 Samuele 目前是 Jython 的两个主要开发者。