擅长:python、mysql、java
<p>我负责一个相当大的混合Java/Jython系统。我们使用java开发核心API,然后使用Jython将java对象连接在一起。这是在一个科学的计算环境中,我们需要能够快速地组合特别的数据分析脚本。在</p>
<p>如果我今天从头开始这个系统,我会选择Jython作为脚本语言。我很喜欢Python,但是我经常遇到Python类型系统和Java类型系统之间的不匹配。例如,如果您只需要一个哈希表,您应该使用Python字典还是javahashmap?根据您是在Python代码中本地使用数据结构还是跨Java边界传递数据结构,决定可能会有所不同。Jython为您做了一定数量的类型强制,但这并不完美。当使用脚本语言的目的首先是为了提高您的工作效率时,甚至不得不考虑这样的问题,这很烦人。在</p>
<p>我想JavaScript或JRuby也会有类似的问题。今天,我将选择一种专门针对JVM并利用Java类型系统的脚本语言。最明显的候选者是Groovy和Beanshell;Groovy最近似乎有了发展势头,所以我将对其进行最深入的研究。在</p>