今天突然發現有一個叫Jython的指令碼語言,他是一個用Java實現的Python。
咱們來看看他們之間有什麼不同。
原文參考地址http://wiki.python.org/jython/WhyJython
為什麼要 Jython
現在有許多語言實現了 Java VM. 下面的這些介紹將 Jython 其他的語言實現中區分開來:
- 動態地編譯成 Java 位元組碼
- 擴充Java原有Class的能力
- 能建立多中類型的程式
- 具有Bean的屬性
- Python 的文法
為什麼 Jython 做得非常好?
- Prototyping
- Java investigation
>>> from java.util import Date
>>> d = Date()
>>> print d
Sat Jan 08 16:26:16 CST 2005
>>> from java.util import Random
>>> print dir(Random)
['__init__', 'nextBoolean', 'nextBytes', 'nextDouble', 'nextFloat',
'nextGaussian', 'nextInt', 'nextLong', 'seed', 'setSeed']
>>>
- Making bean properties accessible
- Glues together libraries already written in Java
- Excellent embedded scripting language
- Object Domain UML Tool
PushToTest
- Drools
Python & Jython 的區別
Python
- C
- Multi-platform
- Compiles to .pyc
- Extend with C
GIL 1
- Python Garbage Collection
Jython
- 100% Java
- Any JVM (currently 1.1+)
- Compiles to .class
- Extend with Java
- Truly multi-threaded
- Java garbage collection
看到以上這些,我不禁要為這些為軟體默默奉獻的人感到敬佩。